Files
libreoffice/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx

2698 lines
100 KiB
C++
Raw Normal View History

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2012-06-14 17:39:53 +01:00
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
2001-02-05 08:26:47 +00:00
#include "SelectionBrowseBox.hxx"
#include <com/sun/star/sdbc/XDatabaseMetaData.hpp>
#include <com/sun/star/sdbc/DataType.hpp>
#include "QueryDesignView.hxx"
#include "querycontroller.hxx"
#include "QueryTableView.hxx"
#include "browserids.hxx"
#include <comphelper/extract.hxx>
#include <comphelper/stl_types.hxx>
#include <comphelper/string.hxx>
2001-02-05 08:26:47 +00:00
#include <comphelper/types.hxx>
#include "TableFieldInfo.hxx"
2002-08-19 07:01:32 +00:00
#include "dbu_qry.hrc"
2001-02-05 08:26:47 +00:00
#include "dbaccess_helpid.hrc"
#include <com/sun/star/container/XNameAccess.hpp>
#include "dbustrings.hrc"
#include "QTableWindow.hxx"
#include <vcl/msgbox.hxx>
#include <vcl/settings.hxx>
2001-02-05 08:26:47 +00:00
#include "QueryDesignFieldUndoAct.hxx"
#include "sqlmessage.hxx"
#include "UITools.hxx"
2011-02-03 00:33:36 +01:00
#include <osl/diagnose.h>
#include "svtools/treelistentry.hxx"
2001-02-14 13:54:12 +00:00
using namespace ::svt;
2001-02-05 08:26:47 +00:00
using namespace ::dbaui;
using namespace ::connectivity;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::sdbc;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::container;
using namespace ::com::sun::star::util;
using namespace ::com::sun::star::accessibility;
2001-02-05 08:26:47 +00:00
#define DEFAULT_QUERY_COLS 20
#define DEFAULT_SIZE GetTextWidth("0") * 30
2002-08-19 07:01:32 +00:00
#define CHECKBOX_SIZE 10
#define HANDLE_ID 0
#define HANDLE_COLUMN_WITDH 70
#define SORT_COLUMN_NONE 0xFFFFFFFF
2001-02-05 08:26:47 +00:00
namespace
{
bool isFieldNameAsterisk(const OUString& _sFieldName )
{
bool bAsterisk = !(!_sFieldName.isEmpty() && _sFieldName.toChar() != '*');
if ( !bAsterisk )
{
OUString sName = _sFieldName;
sal_Int32 nTokenCount = comphelper::string::getTokenCount(sName, '.');
if ( (nTokenCount == 2 && sName.getToken(1,'.')[0] == '*' )
|| (nTokenCount == 3 && sName.getToken(2,'.')[0] == '*' ) )
{
bAsterisk = true;
}
}
return bAsterisk;
}
bool lcl_SupportsCoreSQLGrammar(const Reference< XConnection>& _xConnection)
{
bool bSupportsCoreGrammar = false;
if ( _xConnection.is() )
{
try
{
Reference< XDatabaseMetaData > xMetaData = _xConnection->getMetaData();
bSupportsCoreGrammar = xMetaData.is() && xMetaData->supportsCoreSQLGrammar();
}
catch(Exception&)
{
}
}
return bSupportsCoreGrammar;
}
}
OSelectionBrowseBox::OSelectionBrowseBox( vcl::Window* pParent )
2002-08-19 07:01:32 +00:00
:EditBrowseBox( pParent,EBBF_NOROWPICTURE, WB_3DLOOK, BROWSER_COLUMNSELECTION | BROWSER_KEEPSELECTION | BROWSER_HIDESELECT |
BROWSER_HIDECURSOR | BROWSER_HLINESFULL | BROWSER_VLINESFULL )
,m_nSeekRow(0)
,m_nMaxColumns(0)
2001-02-05 08:26:47 +00:00
,m_aFunctionStrings(ModuleRes(STR_QUERY_FUNCTIONS))
,m_nVisibleCount(0)
,m_nLastSortColumn(SORT_COLUMN_NONE)
,m_bOrderByUnRelated(true)
,m_bGroupByUnRelated(true)
,m_bStopTimer(false)
,m_bWasEditing(false)
,m_bDisableErrorBox(false)
,m_bInUndoMode(false)
2001-02-05 08:26:47 +00:00
{
SetHelpId(HID_CTL_QRYDGNCRIT);
2001-02-05 08:26:47 +00:00
2002-08-19 07:01:32 +00:00
m_nMode = BROWSER_COLUMNSELECTION | BROWSER_HIDESELECT
| BROWSER_KEEPSELECTION | BROWSER_HIDECURSOR
| BROWSER_HLINESFULL | BROWSER_VLINESFULL
| BROWSER_HEADERBAR_NEW ;
2001-02-05 08:26:47 +00:00
2001-03-07 08:27:45 +00:00
m_pTextCell = new Edit(&GetDataWindow(), 0);
m_pVisibleCell = new CheckBoxControl(&GetDataWindow());
m_pTableCell = new ListBoxControl(&GetDataWindow()); m_pTableCell->SetDropDownLineCount( 20 );
m_pFieldCell = new ComboBoxControl(&GetDataWindow()); m_pFieldCell->SetDropDownLineCount( 20 );
m_pOrderCell = new ListBoxControl(&GetDataWindow());
m_pFunctionCell = new ListBoxControl(&GetDataWindow()); m_pFunctionCell->SetDropDownLineCount( 20 );
2001-02-05 08:26:47 +00:00
m_pVisibleCell->SetHelpId(HID_QRYDGN_ROW_VISIBLE);
m_pTableCell->SetHelpId(HID_QRYDGN_ROW_TABLE);
m_pFieldCell->SetHelpId(HID_QRYDGN_ROW_FIELD);
m_pOrderCell->SetHelpId(HID_QRYDGN_ROW_ORDER);
m_pFunctionCell->SetHelpId(HID_QRYDGN_ROW_FUNCTION);
2001-02-05 08:26:47 +00:00
// switch off triState of ::com::sun::star::form::CheckBox
m_pVisibleCell->GetBox().EnableTriState( false );
2001-02-05 08:26:47 +00:00
vcl::Font aTitleFont = OutputDevice::GetDefaultFont( DEFAULTFONT_SANS_UNICODE,Window::GetSettings().GetLanguageTag().getLanguageType(),DEFAULTFONT_FLAGS_ONLYONE);
2001-02-05 08:26:47 +00:00
aTitleFont.SetSize(Size(0, 6));
SetTitleFont(aTitleFont);
OUString aTxt(ModuleRes(STR_QUERY_SORTTEXT));
sal_Int32 nCount = comphelper::string::getTokenCount(aTxt, ';');
for (sal_Int32 nIdx = 0; nIdx < nCount; nIdx++)
m_pOrderCell->InsertEntry(aTxt.getToken(nIdx, ';'));
2001-02-05 08:26:47 +00:00
for(long i=0;i < BROW_ROW_CNT;i++)
m_bVisibleRow.push_back(true);
2001-02-05 08:26:47 +00:00
m_bVisibleRow[BROW_FUNCTION_ROW] = false; // first hide
2001-04-18 12:20:48 +00:00
m_timerInvalidate.SetTimeout(200);
m_timerInvalidate.SetTimeoutHdl(LINK(this, OSelectionBrowseBox, OnInvalidateTimer));
m_timerInvalidate.Start();
2001-02-05 08:26:47 +00:00
}
OSelectionBrowseBox::~OSelectionBrowseBox()
{
delete m_pTextCell;
delete m_pVisibleCell;
delete m_pFieldCell;
delete m_pTableCell;
delete m_pOrderCell;
delete m_pFunctionCell;
}
2001-02-05 08:26:47 +00:00
void OSelectionBrowseBox::initialize()
{
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
if(xConnection.is())
2001-02-05 08:26:47 +00:00
{
const IParseContext& rContext = static_cast<OQueryController&>(getDesignView()->getController()).getParser().getContext();
IParseContext::InternationalKeyCode eFunctions[] = { IParseContext::KEY_AVG,IParseContext::KEY_COUNT,IParseContext::KEY_MAX
,IParseContext::KEY_MIN,IParseContext::KEY_SUM
,IParseContext::KEY_EVERY
,IParseContext::KEY_ANY
,IParseContext::KEY_SOME
,IParseContext::KEY_STDDEV_POP
,IParseContext::KEY_STDDEV_SAMP
,IParseContext::KEY_VAR_SAMP
,IParseContext::KEY_VAR_POP
,IParseContext::KEY_COLLECT
,IParseContext::KEY_FUSION
,IParseContext::KEY_INTERSECTION
};
OUString sGroup = m_aFunctionStrings.getToken(comphelper::string::getTokenCount(m_aFunctionStrings, ';') - 1, ';');
m_aFunctionStrings = m_aFunctionStrings.getToken(0, ';');
for (size_t i = 0; i < sizeof (eFunctions) / sizeof (eFunctions[0]); ++i)
{
m_aFunctionStrings += ";";
m_aFunctionStrings += OStringToOUString(rContext.getIntlKeywordAscii(eFunctions[i]),
RTL_TEXTENCODING_UTF8);
2010-11-25 01:16:20 +00:00
}
m_aFunctionStrings += ";";
m_aFunctionStrings += sGroup;
2012-02-09 18:47:32 +01:00
// Aggregate functions in general available only with Core SQL
// We slip in a few optionals one, too.
if ( lcl_SupportsCoreSQLGrammar(xConnection) )
{
sal_Int32 nCount = comphelper::string::getTokenCount(m_aFunctionStrings, ';');
for( sal_Int32 nIdx = 0; nIdx < nCount; nIdx++ )
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(nIdx, ';'));
}
2012-02-09 18:47:32 +01:00
else // else only COUNT(*) and COUNT("table".*)
{
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(0, ';'));
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(2, ';')); // 2 -> COUNT
}
try
2001-03-01 14:45:02 +00:00
{
2001-07-12 11:14:47 +00:00
Reference< XDatabaseMetaData > xMetaData = xConnection->getMetaData();
if ( xMetaData.is() )
2001-07-12 11:14:47 +00:00
{
m_bOrderByUnRelated = xMetaData->supportsOrderByUnrelated();
m_bGroupByUnRelated = xMetaData->supportsGroupByUnrelated();
2001-07-12 11:14:47 +00:00
}
2001-03-01 14:45:02 +00:00
}
catch(Exception&)
{
}
2001-02-05 08:26:47 +00:00
}
Init();
}
2001-02-05 08:26:47 +00:00
OQueryDesignView* OSelectionBrowseBox::getDesignView()
{
OSL_ENSURE(static_cast<const OQueryDesignView*>(GetParent()),"Parent isn't an OQueryDesignView!");
return static_cast<OQueryDesignView*>(GetParent());
}
2001-02-05 08:26:47 +00:00
OQueryDesignView* OSelectionBrowseBox::getDesignView() const
{
OSL_ENSURE(static_cast<const OQueryDesignView*>(GetParent()),"Parent isn't an OQueryDesignView!");
return static_cast<OQueryDesignView*>(GetParent());
}
2002-08-19 07:01:32 +00:00
namespace
{
class OSelectionBrwBoxHeader : public ::svt::EditBrowserHeader
{
OSelectionBrowseBox* m_pBrowseBox;
2002-08-19 07:01:32 +00:00
protected:
virtual void Select() SAL_OVERRIDE;
2002-08-19 07:01:32 +00:00
public:
OSelectionBrwBoxHeader(OSelectionBrowseBox* pParent);
2002-08-19 07:01:32 +00:00
};
OSelectionBrwBoxHeader::OSelectionBrwBoxHeader(OSelectionBrowseBox* pParent)
2002-08-19 07:01:32 +00:00
: ::svt::EditBrowserHeader(pParent,WB_BUTTONSTYLE|WB_DRAG)
,m_pBrowseBox(pParent)
{
}
void OSelectionBrwBoxHeader::Select()
{
EditBrowserHeader::Select();
m_pBrowseBox->GrabFocus();
2002-08-19 07:01:32 +00:00
BrowserMode nMode = m_pBrowseBox->GetMode();
if ( 0 == m_pBrowseBox->GetSelectColumnCount() )
{
m_pBrowseBox->DeactivateCell();
// we are in the right mode if a row hase been selected row
2002-08-19 07:01:32 +00:00
if ( BROWSER_HIDESELECT == ( nMode & BROWSER_HIDESELECT ) )
{
nMode &= ~BROWSER_HIDESELECT;
nMode |= BROWSER_MULTISELECTION;
m_pBrowseBox->SetMode( nMode );
}
}
m_pBrowseBox->SelectColumnId( GetCurItemId() );
m_pBrowseBox->DeactivateCell();
2002-08-19 07:01:32 +00:00
}
}
2001-02-05 08:26:47 +00:00
BrowserHeader* OSelectionBrowseBox::imp_CreateHeaderBar(BrowseBox* /*pParent*/)
2002-08-19 07:01:32 +00:00
{
return new OSelectionBrwBoxHeader(this);
}
void OSelectionBrowseBox::ColumnMoved( sal_uInt16 nColId, bool _bCreateUndo )
2002-08-19 07:01:32 +00:00
{
EditBrowseBox::ColumnMoved( nColId );
// swap the two columns
sal_uInt16 nNewPos = GetColumnPos( nColId );
2002-08-19 07:01:32 +00:00
OTableFields& rFields = getFields();
if ( rFields.size() > sal_uInt16(nNewPos-1) )
2002-08-19 07:01:32 +00:00
{
sal_uInt16 nOldPos = 0;
2002-08-19 07:01:32 +00:00
OTableFields::iterator aEnd = rFields.end();
OTableFields::iterator aIter = rFields.begin();
for (; aIter != aEnd && ( (*aIter)->GetColumnId() != nColId ); ++aIter,++nOldPos)
;
OSL_ENSURE( (nNewPos-1) != nOldPos && nOldPos < rFields.size(),"Old and new position are equal!");
if ( aIter != aEnd )
2002-08-19 07:01:32 +00:00
{
OTableFieldDescRef pOldEntry = rFields[nOldPos];
rFields.erase(rFields.begin() + nOldPos);
rFields.insert(rFields.begin() + nNewPos - 1,pOldEntry);
// create the undo action
if ( !m_bInUndoMode && _bCreateUndo )
{
OTabFieldMovedUndoAct* pUndoAct = new OTabFieldMovedUndoAct(this);
pUndoAct->SetColumnPosition( nOldPos + 1);
pUndoAct->SetTabFieldDescr(pOldEntry);
2002-08-19 07:01:32 +00:00
getDesignView()->getController().addUndoActionAndInvalidate(pUndoAct);
2010-11-25 01:16:20 +00:00
}
2002-08-19 07:01:32 +00:00
}
}
else
OSL_FAIL("Invalid column id!");
2002-08-19 07:01:32 +00:00
}
2001-02-05 08:26:47 +00:00
void OSelectionBrowseBox::Init()
{
2002-08-19 07:01:32 +00:00
EditBrowseBox::Init();
2001-02-05 08:26:47 +00:00
2002-08-19 07:01:32 +00:00
// set the header bar
BrowserHeader* pNewHeaderBar = CreateHeaderBar(this);
pNewHeaderBar->SetMouseTransparent(false);
2002-08-19 07:01:32 +00:00
SetHeaderBar(pNewHeaderBar);
2002-08-19 07:01:32 +00:00
SetMode(m_nMode);
vcl::Font aFont( GetDataWindow().GetFont() );
2001-02-05 08:26:47 +00:00
aFont.SetWeight( WEIGHT_NORMAL );
GetDataWindow().SetFont( aFont );
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
Size aHeight;
const Control* pControls[] = { m_pTextCell,m_pVisibleCell,m_pTableCell,m_pFieldCell };
for (sal_Size i = 0; i < sizeof (pControls) / sizeof (pControls[0]); ++i)
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
{
const Size aTemp(pControls[i]->GetOptimalSize());
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
if ( aTemp.Height() > aHeight.Height() )
aHeight.Height() = aTemp.Height();
2010-11-25 01:16:20 +00:00
}
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
SetDataRowHeight(aHeight.Height());
2001-02-05 08:26:47 +00:00
SetTitleLines(1);
// get number of visible rows
2001-02-05 08:26:47 +00:00
for(long i=0;i<BROW_ROW_CNT;i++)
{
if(m_bVisibleRow[i])
m_nVisibleCount++;
}
RowInserted(0, m_nVisibleCount, false);
try
2001-03-01 14:45:02 +00:00
{
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
if(xConnection.is())
{
Reference< XDatabaseMetaData > xMetaData = xConnection->getMetaData();
m_nMaxColumns = xMetaData.is() ? xMetaData->getMaxColumnsInSelect() : 0;
}
else
m_nMaxColumns = 0;
2001-03-01 14:45:02 +00:00
}
catch(const SQLException&)
{
OSL_FAIL("Catched Exception when asking for database metadata options!");
2001-03-01 14:45:02 +00:00
m_nMaxColumns = 0;
}
2001-02-05 08:26:47 +00:00
}
2001-04-30 12:02:01 +00:00
void OSelectionBrowseBox::PreFill()
2001-02-05 08:26:47 +00:00
{
SetUpdateMode(false);
2001-02-05 08:26:47 +00:00
if (GetCurRow() != 0)
GoToRow(0);
static_cast< OQueryController& >( getDesignView()->getController() ).clearFields();
2001-02-05 08:26:47 +00:00
DeactivateCell();
RemoveColumns();
2002-08-19 07:01:32 +00:00
InsertHandleColumn( HANDLE_COLUMN_WITDH );
SetUpdateMode(true);
2001-02-05 08:26:47 +00:00
}
2001-04-30 12:02:01 +00:00
void OSelectionBrowseBox::ClearAll()
{
SetUpdateMode(false);
2001-04-30 12:02:01 +00:00
OTableFields::reverse_iterator aIter = getFields().rbegin();
for ( ;aIter != getFields().rend(); ++aIter )
2001-04-30 12:02:01 +00:00
{
if ( !(*aIter)->IsEmpty() )
{
RemoveField( (*aIter)->GetColumnId() );
aIter = getFields().rbegin();
}
2001-04-30 12:02:01 +00:00
}
m_nLastSortColumn = SORT_COLUMN_NONE;
SetUpdateMode(true);
2001-04-30 12:02:01 +00:00
}
void OSelectionBrowseBox::SetReadOnly(bool bRO)
2001-02-05 08:26:47 +00:00
{
if (bRO)
{
DeactivateCell();
m_nMode &= ~BROWSER_HIDECURSOR;
SetMode(m_nMode);
}
else
{
m_nMode |= BROWSER_HIDECURSOR;
SetMode(m_nMode);
ActivateCell();
}
}
CellController* OSelectionBrowseBox::GetController(long nRow, sal_uInt16 nColId)
2001-02-05 08:26:47 +00:00
{
if ( nColId > getFields().size() )
return NULL;
OTableFieldDescRef pEntry = getFields()[nColId-1];
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry.is(), "OSelectionBrowseBox::GetController : keine FieldDescription !");
2001-02-05 08:26:47 +00:00
2010-10-15 12:22:54 -05:00
if (!pEntry.is())
2001-02-05 08:26:47 +00:00
return NULL;
if (static_cast<OQueryController&>(getDesignView()->getController()).isReadOnly())
2001-02-05 08:26:47 +00:00
return NULL;
long nCellIndex = GetRealRow(nRow);
switch (nCellIndex)
{
case BROW_FIELD_ROW:
return new ComboBoxCellController(m_pFieldCell);
2001-02-05 08:26:47 +00:00
case BROW_TABLE_ROW:
return new ListBoxCellController(m_pTableCell);
2001-02-05 08:26:47 +00:00
case BROW_VIS_ROW:
return new CheckBoxCellController(m_pVisibleCell);
2001-02-05 08:26:47 +00:00
case BROW_ORDER_ROW:
return new ListBoxCellController(m_pOrderCell);
2001-02-05 08:26:47 +00:00
case BROW_FUNCTION_ROW:
return new ListBoxCellController(m_pFunctionCell);
2001-02-05 08:26:47 +00:00
default:
return new EditCellController(m_pTextCell);
2001-02-05 08:26:47 +00:00
}
}
void OSelectionBrowseBox::InitController(CellControllerRef& /*rController*/, long nRow, sal_uInt16 nColId)
2001-02-05 08:26:47 +00:00
{
OSL_ENSURE(nColId != BROWSER_INVALIDID,"An Invalid Id was set!");
if ( nColId == BROWSER_INVALIDID )
return;
sal_uInt16 nPos = GetColumnPos(nColId);
if ( nPos == 0 || nPos == BROWSER_INVALIDID || nPos > getFields().size() )
return;
OTableFieldDescRef pEntry = getFields()[nPos-1];
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry.is(), "OSelectionBrowseBox::InitController : keine FieldDescription !");
2001-02-05 08:26:47 +00:00
long nCellIndex = GetRealRow(nRow);
switch (nCellIndex)
{
case BROW_FIELD_ROW:
{
m_pFieldCell->Clear();
m_pFieldCell->SetText(OUString());
2001-02-05 08:26:47 +00:00
OUString aField(pEntry->GetField());
OUString aTable(pEntry->GetAlias());
2001-02-05 08:26:47 +00:00
getDesignView()->fillValidFields(aTable, m_pFieldCell);
// replace with alias.*
if (aField.trim() == "*")
2001-02-05 08:26:47 +00:00
{
aField = aTable + ".*";
2001-02-05 08:26:47 +00:00
}
m_pFieldCell->SetText(aField);
} break;
case BROW_TABLE_ROW:
{
m_pTableCell->Clear();
enableControl(pEntry,m_pTableCell);
if ( !pEntry->isCondition() )
2001-02-05 08:26:47 +00:00
{
OJoinTableView::OTableWindowMap& rTabWinList = getDesignView()->getTableView()->GetTabWinMap();
OJoinTableView::OTableWindowMap::iterator aIter = rTabWinList.begin();
OJoinTableView::OTableWindowMap::iterator aEnd = rTabWinList.end();
CWS-TOOLING: integrate CWS dbaperf2 2009-06-22 11:04:36 +0200 msc r273202 : #100000# fix to run this test 2009-06-22 09:41:04 +0200 msc r273200 : #100000# correct case 2009-06-22 09:02:42 +0200 msc r273199 : new SRB 2009-06-22 08:53:26 +0200 msc r273198 : #100000 2009-06-15 12:36:32 +0200 oj r272976 : test 2009-06-12 14:23:23 +0200 msc r272918 : #101587# unused feature was removed 2009-06-12 06:45:17 +0200 oj r272903 : use GUI instead of OS 2009-06-11 09:12:30 +0200 oj r272845 : remove unused dep 2009-06-11 09:11:09 +0200 oj r272844 : ColumnAliasInOrderBy not supported 2009-06-11 08:27:00 +0200 oj r272843 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@272827 (milestone: DEV300:m50) 2009-06-10 15:30:17 +0200 msc r272822 : #100000 2009-06-10 15:27:40 +0200 msc r272820 : #102515# new function for the database type list 2009-06-10 15:26:09 +0200 msc r272818 : move file to dbaccess/tools/dbcreatetools.inc 2009-06-10 15:20:10 +0200 msc r272816 : #102515# new function for the database type list 2009-06-10 12:34:46 +0200 oj r272803 : #i101587# check extension 2009-06-10 11:53:45 +0200 oj r272800 : remove unused code 2009-06-09 09:57:25 +0200 oj r272752 : #i101587# EscapeDateTime moved into features section 2009-06-09 09:56:26 +0200 oj r272751 : enable finish 2009-06-08 11:50:37 +0200 oj r272726 : #i102588# move convert tzo saveDataSource 2009-06-05 11:54:20 +0200 jsk r272676 : #i102515# - NEW: Functions to retrieve Database names from API 2009-06-05 10:52:22 +0200 jsk r272671 : NEW: Functions to retrieve Database names from API 2009-06-05 09:36:54 +0200 oj r272666 : handle win and unx differently 2009-06-05 09:36:28 +0200 oj r272665 : handle win and unx differently 2009-06-04 13:41:56 +0200 oj r272625 : #i101268# make use of stringbuffer instead of oustring 2009-06-04 10:18:14 +0200 oj r272612 : add SAL_DLLPUBLIC_EXPORT 2009-05-28 10:56:33 +0200 oj r272381 : #i101587# create langpacks 2009-05-28 10:41:59 +0200 oj r272380 : #i101587# create langpacks 2009-05-28 10:29:30 +0200 oj r272379 : #i101587# create langpacks 2009-05-07 10:11:46 +0200 oj r271635 : fix compile warnings 2009-05-07 07:01:31 +0200 oj r271619 : change type from int32 to PathID 2009-05-07 06:53:19 +0200 oj r271618 : add all 2009-05-06 14:57:02 +0200 oj r271595 : add missing lib 2009-05-06 14:56:54 +0200 oj r271594 : no used anymore 2009-05-06 14:56:08 +0200 oj r271593 : no used anymore 2009-05-06 14:54:25 +0200 oj r271592 : no used anymore 2009-05-06 14:45:59 +0200 oj r271591 : add missing lib 2009-05-06 14:41:54 +0200 oj r271590 : change wnt 2009-05-06 14:22:21 +0200 oj r271589 : #i101587# use config for the drivers 2009-05-06 14:21:39 +0200 oj r271588 : #i101587# add new set for metadata and config data for driver 2009-05-06 14:19:36 +0200 oj r271587 : #i101587# handle metadata and props of driver 2009-05-06 10:11:11 +0200 oj r271570 : #i101587# correct wrong use of reference 2009-05-06 09:24:33 +0200 oj r271567 : #i101587# add new set for metadata 2009-05-06 08:52:06 +0200 oj r271563 : #i101587# add driver configuration 2009-05-06 08:51:04 +0200 oj r271562 : #i101587# add driver configuration 2009-05-04 10:24:41 +0200 oj r271442 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@271427 (milestone: DEV300:m47) 2009-04-28 07:06:22 +0200 oj r271303 : compile error 2009-04-27 14:12:48 +0200 oj r271270 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 14:12:27 +0200 oj r271269 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 09:30:10 +0200 oj r271255 : use string buffer when possible 2009-04-24 11:56:01 +0200 oj r271207 : #i101268# remove end() call from loop 2009-04-23 14:24:03 +0200 oj r271171 : add dep 2009-04-23 13:25:25 +0200 oj r271164 : #i101268# add config entries for database drivers 2009-04-23 13:07:13 +0200 oj r271161 : #i101268# add config entries for database drivers 2009-04-23 13:06:33 +0200 oj r271160 : #i101268# add parent url pattern entry for driver node 2009-04-23 13:05:39 +0200 oj r271159 : #i101268# add config entry for driver node 2009-04-23 13:04:09 +0200 oj r271157 : #i101268# add config entry for driver node 2009-04-23 06:41:32 +0200 oj r271142 : #i101268# add new configuration file Drivers 2009-04-22 13:49:19 +0200 oj r271103 : convert EOL 2009-04-22 13:29:17 +0200 oj r271101 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:28:08 +0200 oj r271100 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:15:26 +0200 oj r271098 : #i101268# add new configuration file Drivers 2009-04-22 13:14:43 +0200 oj r271097 : #i101268# use of driver configuration entries for features and properties
2009-07-03 12:24:35 +00:00
for(;aIter != aEnd;++aIter)
m_pTableCell->InsertEntry(static_cast<OQueryTableWindow*>(aIter->second)->GetAliasName());
2001-02-05 08:26:47 +00:00
m_pTableCell->InsertEntry(OUString(ModuleRes(STR_QUERY_NOTABLE)), 0);
if (!pEntry->GetAlias().isEmpty())
m_pTableCell->SelectEntry(pEntry->GetAlias());
else
m_pTableCell->SelectEntry(OUString(ModuleRes(STR_QUERY_NOTABLE)));
2001-02-05 08:26:47 +00:00
}
} break;
case BROW_VIS_ROW:
{
m_pVisibleCell->GetBox().Check(pEntry->IsVisible());
m_pVisibleCell->GetBox().SaveValue();
enableControl(pEntry,m_pTextCell);
2001-02-05 08:26:47 +00:00
if(!pEntry->IsVisible() && pEntry->GetOrderDir() != ORDER_NONE && !m_bOrderByUnRelated)
{
// a column has to visible in order to show up in ORDER BY
pEntry->SetVisible(true);
2001-02-05 08:26:47 +00:00
m_pVisibleCell->GetBox().Check(pEntry->IsVisible());
m_pVisibleCell->GetBox().SaveValue();
m_pVisibleCell->GetBox().Disable();
m_pVisibleCell->GetBox().EnableInput(false);
OUString aMessage(ModuleRes(STR_QRY_ORDERBY_UNRELATED));
2001-02-08 14:33:28 +00:00
OQueryDesignView* paDView = getDesignView();
InfoBox(paDView, aMessage).Execute();
2001-02-05 08:26:47 +00:00
}
} break;
case BROW_ORDER_ROW:
m_pOrderCell->SelectEntryPos(
sal::static_int_cast< sal_uInt16 >(pEntry->GetOrderDir()));
enableControl(pEntry,m_pOrderCell);
break;
2001-02-05 08:26:47 +00:00
case BROW_COLUMNALIAS_ROW:
setTextCellContext(pEntry,pEntry->GetFieldAlias(),HID_QRYDGN_ROW_ALIAS);
2001-02-05 08:26:47 +00:00
break;
case BROW_FUNCTION_ROW:
setFunctionCell(pEntry);
break;
default:
2001-02-05 08:26:47 +00:00
{
sal_uInt16 nIdx = sal_uInt16(nCellIndex - BROW_CRIT1_ROW);
setTextCellContext(pEntry,pEntry->GetCriteria( nIdx ),HID_QRYDGN_ROW_CRIT);
}
}
Controller()->ClearModified();
}
void OSelectionBrowseBox::notifyTableFieldChanged(const OUString& _sOldAlias, const OUString& _sAlias, bool& _bListAction, sal_uInt16 _nColumnId)
{
appendUndoAction(_sOldAlias,_sAlias,BROW_TABLE_ROW,_bListAction);
if ( m_bVisibleRow[BROW_TABLE_ROW] )
RowModified(GetBrowseRow(BROW_TABLE_ROW), _nColumnId);
}
void OSelectionBrowseBox::notifyFunctionFieldChanged(const OUString& _sOldFunctionName, const OUString& _sFunctionName, bool& _bListAction, sal_uInt16 _nColumnId)
{
appendUndoAction(_sOldFunctionName,_sFunctionName,BROW_FUNCTION_ROW,_bListAction);
if ( !m_bVisibleRow[BROW_FUNCTION_ROW] )
SetRowVisible(BROW_FUNCTION_ROW, true);
RowModified(GetBrowseRow(BROW_FUNCTION_ROW), _nColumnId);
}
void OSelectionBrowseBox::clearEntryFunctionField(const OUString& _sFieldName,OTableFieldDescRef& _pEntry, bool& _bListAction,sal_uInt16 _nColumnId)
{
if ( isFieldNameAsterisk( _sFieldName ) && (!_pEntry->isNoneFunction() || _pEntry->IsGroupBy()) )
{
OUString sFunctionName;
GetFunctionName(SQL_TOKEN_COUNT,sFunctionName);
OUString sOldLocalizedFunctionName = _pEntry->GetFunction();
if ( sOldLocalizedFunctionName != sFunctionName || _pEntry->IsGroupBy() )
{
// append undo action for the function field
_pEntry->SetFunctionType(FKT_NONE);
_pEntry->SetFunction(OUString());
_pEntry->SetGroupBy(false);
notifyFunctionFieldChanged(sOldLocalizedFunctionName,_pEntry->GetFunction(),_bListAction,_nColumnId);
}
}
}
bool OSelectionBrowseBox::fillColumnRef(const OSQLParseNode* _pColumnRef, const Reference< XConnection >& _rxConnection, OTableFieldDescRef& _pEntry, bool& _bListAction )
{
OSL_ENSURE(_pColumnRef,"No valid parsenode!");
OUString sColumnName,sTableRange;
OSQLParseTreeIterator::getColumnRange(_pColumnRef,_rxConnection,sColumnName,sTableRange);
return fillColumnRef(sColumnName,sTableRange,_rxConnection->getMetaData(),_pEntry,_bListAction);
}
bool OSelectionBrowseBox::fillColumnRef(const OUString& _sColumnName, const OUString& _sTableRange, const Reference<XDatabaseMetaData>& _xMetaData, OTableFieldDescRef& _pEntry, bool& _bListAction)
{
bool bError = false;
::comphelper::UStringMixEqual bCase(_xMetaData->supportsMixedCaseQuotedIdentifiers());
// check if the table name is the same
if ( !_sTableRange.isEmpty() && (bCase(_pEntry->GetTable(),_sTableRange) || bCase(_pEntry->GetAlias(),_sTableRange)) )
{ // a table was already inserted and the tables contains that column name
if ( !_pEntry->GetTabWindow() )
{ // fill tab window
OUString sOldAlias = _pEntry->GetAlias();
if ( !fillEntryTable(_pEntry,_pEntry->GetTable()) )
fillEntryTable(_pEntry,_pEntry->GetAlias()); // only when the first failed
if ( !bCase(sOldAlias,_pEntry->GetAlias()) )
notifyTableFieldChanged(sOldAlias,_pEntry->GetAlias(),_bListAction,GetCurColumnId());
}
}
// check if the table window
OQueryTableWindow* pEntryTab = static_cast<OQueryTableWindow*>(_pEntry->GetTabWindow());
if ( !pEntryTab ) // no table found with this name so we have to travel through all tables
{
sal_uInt16 nTabCount = 0;
if ( !static_cast<OQueryTableView*>(getDesignView()->getTableView())->FindTableFromField(_sColumnName,_pEntry,nTabCount) ) // error occurred: column not in table window
{
OUString sErrorMsg(ModuleRes(RID_STR_FIELD_DOESNT_EXIST));
sErrorMsg = sErrorMsg.replaceFirst("$name$",_sColumnName);
OSQLErrorBox( this, sErrorMsg ).Execute();
bError = true;
}
else
{
pEntryTab = static_cast<OQueryTableWindow*>(_pEntry->GetTabWindow());
notifyTableFieldChanged(OUString(),_pEntry->GetAlias(),_bListAction,GetCurColumnId());
2001-02-05 08:26:47 +00:00
}
}
if ( pEntryTab ) // here we got a valid table
_pEntry->SetField(_sColumnName);
return bError;
}
bool OSelectionBrowseBox::saveField(OUString& _sFieldName ,OTableFieldDescRef& _pEntry, bool& _bListAction)
{
bool bError = false;
OQueryController& rController = static_cast<OQueryController&>(getDesignView()->getController());
// first look if the name can be found in our tables
sal_uInt16 nTabCount = 0;
OUString sOldAlias = _pEntry->GetAlias();
if ( static_cast<OQueryTableView*>(getDesignView()->getTableView())->FindTableFromField(_sFieldName,_pEntry,nTabCount) )
{
// append undo action for the alias name
_pEntry->SetField(_sFieldName);
notifyTableFieldChanged(sOldAlias,_pEntry->GetAlias(),_bListAction,GetCurColumnId());
clearEntryFunctionField(_sFieldName,_pEntry,_bListAction,_pEntry->GetColumnId());
return bError;
}
Reference<XConnection> xConnection( rController.getConnection() );
Reference< XDatabaseMetaData > xMetaData;
if ( xConnection.is() )
xMetaData = xConnection->getMetaData();
OSL_ENSURE( xMetaData.is(), "OSelectionBrowseBox::saveField: invalid connection/meta data!" );
if ( !xMetaData.is() )
return true;
OUString sErrorMsg;
// second test if the name can be set as select columns in a pseudo statement
// we have to look which entries we should quote
const OUString sFieldAlias = _pEntry->GetFieldAlias();
::connectivity::OSQLParser& rParser( rController.getParser() );
{
// automatically add parentheses around subqueries
OSQLParseNode *pParseNode = NULL;
OUString devnull;
pParseNode = rParser.parseTree( devnull, _sFieldName, true );
if (pParseNode == NULL)
pParseNode = rParser.parseTree( devnull, _sFieldName, false );
if (pParseNode != NULL && SQL_ISRULE(pParseNode, select_statement))
_sFieldName = "(" + _sFieldName + ")";
}
OSQLParseNode* pParseNode = NULL;
{
// 4 passes in trying to interprete the field name
// - don't quote the field name, parse internationally
// - don't quote the field name, parse en-US
// - quote the field name, parse internationally
// - quote the field name, parse en-US
size_t nPass = 4;
OUString sQuotedFullFieldName(::dbtools::quoteName( xMetaData->getIdentifierQuoteString(), _sFieldName ));
OUString sFullFieldName(_sFieldName);
if ( _pEntry->isAggreateFunction() )
{
OSL_ENSURE(!_pEntry->GetFunction().isEmpty(),"Functionname darf hier nicht leer sein! ;-(");
sQuotedFullFieldName = _pEntry->GetFunction() + "(" + sQuotedFullFieldName + ")";
sFullFieldName = _pEntry->GetFunction() + "(" + sFullFieldName + ")";
}
do
{
bool bQuote = ( nPass <= 2 );
bool bInternational = ( nPass % 2 ) == 0;
OUString sSql;
if ( bQuote )
sSql += sQuotedFullFieldName;
else
sSql += sFullFieldName;
sSql = "SELECT " + sSql;
if ( !sFieldAlias.isEmpty() )
{ // always quote the alias name: there cannot be a function in it
sSql += " ";
sSql += ::dbtools::quoteName( xMetaData->getIdentifierQuoteString(), sFieldAlias );
}
sSql += " FROM x";
pParseNode = rParser.parseTree( sErrorMsg, sSql, bInternational );
}
while ( ( pParseNode == NULL ) && ( --nPass > 0 ) );
}
if ( pParseNode == NULL )
{
// something different which we have to check
OUString sErrorMessage( ModuleRes( STR_QRY_COLUMN_NOT_FOUND ) );
sErrorMessage = sErrorMessage.replaceFirst("$name$",_sFieldName);
OSQLErrorBox( this, sErrorMessage ).Execute();
return true;
}
// we got a valid select column
// find what type of column has be inserted
::connectivity::OSQLParseNode* pSelection = pParseNode->getChild(2);
if ( SQL_ISRULE(pSelection,selection) ) // we found the asterisk
{
_pEntry->SetField(_sFieldName);
clearEntryFunctionField(_sFieldName,_pEntry,_bListAction,_pEntry->GetColumnId());
}
else // travel through the select column parse node
{
::comphelper::UStringMixEqual bCase(xMetaData->supportsMixedCaseQuotedIdentifiers());
OTableFieldDescRef aSelEntry = _pEntry;
sal_uInt16 nColumnId = aSelEntry->GetColumnId();
sal_uInt32 nCount = pSelection->count();
for (sal_uInt32 i = 0; i < nCount; ++i)
{
if ( i > 0 ) // may we have to append more than one field
{
sal_uInt16 nColumnPostion;
aSelEntry = FindFirstFreeCol(nColumnPostion);
2010-10-15 12:22:54 -05:00
if ( !aSelEntry.is() )
{
AppendNewCol(1);
aSelEntry = FindFirstFreeCol(nColumnPostion);
}
++nColumnPostion;
nColumnId = GetColumnId(nColumnPostion);
}
::connectivity::OSQLParseNode* pChild = pSelection->getChild( i );
OSL_ENSURE(SQL_ISRULE(pChild,derived_column), "No derived column found!");
// get the column alias
OUString sColumnAlias = OSQLParseTreeIterator::getColumnAlias(pChild);
if ( !sColumnAlias.isEmpty() ) // we found an as clause
{
OUString aSelectionAlias = aSelEntry->GetFieldAlias();
aSelEntry->SetFieldAlias( sColumnAlias );
// append undo
appendUndoAction(aSelectionAlias,aSelEntry->GetFieldAlias(),BROW_COLUMNALIAS_ROW,_bListAction);
if ( m_bVisibleRow[BROW_COLUMNALIAS_ROW] )
RowModified(GetBrowseRow(BROW_COLUMNALIAS_ROW), nColumnId);
}
::connectivity::OSQLParseNode* pColumnRef = pChild->getChild(0);
if (
pColumnRef->getKnownRuleID() != OSQLParseNode::subquery &&
pColumnRef->count() == 3 &&
SQL_ISPUNCTUATION(pColumnRef->getChild(0),"(") &&
SQL_ISPUNCTUATION(pColumnRef->getChild(2),")")
)
pColumnRef = pColumnRef->getChild(1);
if ( SQL_ISRULE(pColumnRef,column_ref) ) // we found a valid column name or more column names
{
// look if we can find the corresponding table
bError = fillColumnRef( pColumnRef, xConnection, aSelEntry, _bListAction );
// we found a simple column so we must clear the function fields but only when the column name is '*'
// and the function is different to count
clearEntryFunctionField(_sFieldName,aSelEntry,_bListAction,nColumnId);
}
// do we have a aggregate function and only a function?
else if ( SQL_ISRULE(pColumnRef,general_set_fct) )
{
OUString sLocalizedFunctionName;
if ( GetFunctionName(pColumnRef->getChild(0)->getTokenID(),sLocalizedFunctionName) )
{
OUString sOldLocalizedFunctionName = aSelEntry->GetFunction();
aSelEntry->SetFunction(sLocalizedFunctionName);
sal_uInt32 nFunCount = pColumnRef->count() - 1;
sal_Int32 nFunctionType = FKT_AGGREGATE;
bool bQuote = false;
// may be there exists only one parameter which is a column, fill all information into our fields
if ( nFunCount == 4 && SQL_ISRULE(pColumnRef->getChild(3),column_ref) )
bError = fillColumnRef( pColumnRef->getChild(3), xConnection, aSelEntry, _bListAction );
else if ( nFunCount == 3 ) // we have a COUNT(*) here, so take the first table
bError = fillColumnRef( OUString("*"), OUString(), xMetaData, aSelEntry, _bListAction );
else
{
nFunctionType |= FKT_NUMERIC;
bQuote = true;
aSelEntry->SetDataType(DataType::DOUBLE);
aSelEntry->SetFieldType(TAB_NORMAL_FIELD);
}
// now parse the parameters
OUString sParameters;
for(sal_uInt32 function = 2; function < nFunCount; ++function) // we only want to parse the parameters of the function
pColumnRef->getChild(function)->parseNodeToStr( sParameters, xConnection, &rParser.getContext(), true, bQuote );
aSelEntry->SetFunctionType(nFunctionType);
aSelEntry->SetField(sParameters);
if ( aSelEntry->IsGroupBy() )
{
sOldLocalizedFunctionName = m_aFunctionStrings.getToken(comphelper::string::getTokenCount(m_aFunctionStrings, ';')-1, ';');
aSelEntry->SetGroupBy(false);
}
// append undo action
notifyFunctionFieldChanged(sOldLocalizedFunctionName,sLocalizedFunctionName,_bListAction, nColumnId);
}
else
OSL_FAIL("Unsupported function inserted!");
}
else
{
// so we first clear the function field
clearEntryFunctionField(_sFieldName,aSelEntry,_bListAction,nColumnId);
OUString sFunction;
pColumnRef->parseNodeToStr( sFunction,
xConnection,
&rController.getParser().getContext(),
true,
true); // quote is to true because we need quoted elements inside the function
getDesignView()->fillFunctionInfo(pColumnRef,sFunction,aSelEntry);
if( SQL_ISRULEOR3(pColumnRef, position_exp, extract_exp, fold) ||
SQL_ISRULEOR3(pColumnRef, char_substring_fct, length_exp, char_value_fct) )
// a calculation has been found ( can be calc and function )
{
// now parse the whole statement
sal_uInt32 nFunCount = pColumnRef->count();
OUString sParameters;
for(sal_uInt32 function = 0; function < nFunCount; ++function)
pColumnRef->getChild(function)->parseNodeToStr( sParameters, xConnection, &rParser.getContext(), true, true );
sOldAlias = aSelEntry->GetAlias();
sal_Int32 nNewFunctionType = aSelEntry->GetFunctionType() | FKT_NUMERIC | FKT_OTHER;
aSelEntry->SetFunctionType(nNewFunctionType);
aSelEntry->SetField(sParameters);
}
else
{
aSelEntry->SetFieldAlias(sColumnAlias);
if ( SQL_ISRULE(pColumnRef,set_fct_spec) )
aSelEntry->SetFunctionType(/*FKT_NUMERIC | */FKT_OTHER);
else
aSelEntry->SetFunctionType(FKT_NUMERIC | FKT_OTHER);
}
aSelEntry->SetAlias(OUString());
notifyTableFieldChanged(sOldAlias,aSelEntry->GetAlias(),_bListAction, nColumnId);
}
if ( i > 0 && !InsertField(aSelEntry,BROWSER_INVALIDID,true,false).is() ) // may we have to append more than one field
{ // the field could not be inserted
OUString sErrorMessage( ModuleRes( RID_STR_FIELD_DOESNT_EXIST ) );
sErrorMessage = sErrorMessage.replaceFirst("$name$",aSelEntry->GetField());
OSQLErrorBox( this, sErrorMessage ).Execute();
bError = true;
}
2001-02-05 08:26:47 +00:00
}
}
delete pParseNode;
2001-02-05 08:26:47 +00:00
return bError;
}
bool OSelectionBrowseBox::SaveModified()
2001-02-05 08:26:47 +00:00
{
OQueryController& rController = static_cast<OQueryController&>(getDesignView()->getController());
OTableFieldDescRef pEntry = NULL;
sal_uInt16 nCurrentColumnPos = GetColumnPos(GetCurColumnId());
if(getFields().size() > static_cast<sal_uInt16>(nCurrentColumnPos - 1))
pEntry = getEntry(nCurrentColumnPos - 1);
2001-02-05 08:26:47 +00:00
bool bWasEmpty = pEntry.is() && pEntry->IsEmpty();
bool bError = false;
bool bListAction = false;
2001-02-05 08:26:47 +00:00
2010-10-15 12:22:54 -05:00
if (pEntry.is() && Controller().Is() && Controller()->IsModified())
2001-02-05 08:26:47 +00:00
{
// for the Undo-action
OUString strOldCellContents,sNewValue;
2001-02-05 08:26:47 +00:00
long nRow = GetRealRow(GetCurRow());
bool bAppendRow = false;
2001-02-05 08:26:47 +00:00
switch (nRow)
{
case BROW_VIS_ROW:
{
bool bOldValue = m_pVisibleCell->GetBox().GetSavedValue() != TRISTATE_FALSE;
strOldCellContents = bOldValue ? OUStringLiteral("1") : OUStringLiteral("0");
sNewValue = !bOldValue ? OUStringLiteral("1") : OUStringLiteral("0");
2001-04-18 10:44:59 +00:00
}
if((m_bOrderByUnRelated || pEntry->GetOrderDir() == ORDER_NONE) &&
(m_bGroupByUnRelated || !pEntry->IsGroupBy()))
{
2001-02-05 08:26:47 +00:00
pEntry->SetVisible(m_pVisibleCell->GetBox().IsChecked());
}
else
{
pEntry->SetVisible(true);
2001-02-05 08:26:47 +00:00
m_pVisibleCell->GetBox().Check();
}
break;
case BROW_FIELD_ROW:
{
OUString aFieldName(m_pFieldCell->GetText());
try
2001-02-05 08:26:47 +00:00
{
if (aFieldName.isEmpty())
{
OTableFieldDescRef pNewEntry = new OTableFieldDesc();
pNewEntry->SetColumnId( pEntry->GetColumnId() );
::std::replace(getFields().begin(),getFields().end(),pEntry,pNewEntry);
sal_uInt16 nCol = GetCurColumnId();
for (int i = 0; i < m_nVisibleCount; i++) // redraw column
RowModified(i,nCol);
}
else
{
strOldCellContents = pEntry->GetField();
bListAction = true;
if ( !m_bInUndoMode )
rController.GetUndoManager().EnterListAction(OUString(),OUString());
sal_Int32 nPos = m_pFieldCell->GetEntryPos(aFieldName);
OUString aAliasName = pEntry->GetAlias();
if ( nPos != COMBOBOX_ENTRY_NOTFOUND && aAliasName.isEmpty() && comphelper::string::getTokenCount(aFieldName, '.') > 1 )
{ // special case, we have a table field so we must cut the table name
OUString sTableAlias = aFieldName.getToken(0,'.');
pEntry->SetAlias(sTableAlias);
OUString sColumnName = aFieldName.copy(sTableAlias.getLength()+1,aFieldName.getLength() - sTableAlias.getLength() -1);
Reference<XConnection> xConnection = rController.getConnection();
if ( !xConnection.is() )
return false;
bError = fillColumnRef( sColumnName, sTableAlias, xConnection->getMetaData(), pEntry, bListAction );
}
else
bError = true;
if ( bError )
bError = saveField(aFieldName,pEntry,bListAction);
}
}
catch(Exception&)
{
bError = true;
}
if ( bError )
{
sNewValue = aFieldName;
if ( !m_bInUndoMode )
static_cast<OQueryController&>(getDesignView()->getController()).GetUndoManager().LeaveListAction();
bListAction = false;
2001-02-05 08:26:47 +00:00
}
else
sNewValue = pEntry->GetField();
rController.InvalidateFeature( ID_BROWSER_QUERY_EXECUTE );
2001-02-05 08:26:47 +00:00
}
break;
case BROW_TABLE_ROW:
{
OUString aAliasName = m_pTableCell->GetSelectEntry();
2001-02-05 08:26:47 +00:00
strOldCellContents = pEntry->GetAlias();
if ( m_pTableCell->GetSelectEntryPos() != 0 )
2001-02-05 08:26:47 +00:00
{
pEntry->SetAlias(aAliasName);
// we have to set the table name as well as the table window
OJoinTableView::OTableWindowMap& rTabWinList = getDesignView()->getTableView()->GetTabWinMap();
OJoinTableView::OTableWindowMap::iterator aIter = rTabWinList.find(aAliasName);
if(aIter != rTabWinList.end())
2001-02-05 08:26:47 +00:00
{
OQueryTableWindow* pEntryTab = static_cast<OQueryTableWindow*>(aIter->second);
if (pEntryTab)
2001-02-05 08:26:47 +00:00
{
pEntry->SetTable(pEntryTab->GetTableName());
pEntry->SetTabWindow(pEntryTab);
2001-02-05 08:26:47 +00:00
}
}
}
else
{
pEntry->SetAlias(OUString());
pEntry->SetTable(OUString());
pEntry->SetTabWindow(NULL);
}
sNewValue = pEntry->GetAlias();
2001-02-05 08:26:47 +00:00
} break;
case BROW_ORDER_ROW:
{
strOldCellContents = OUString::number((sal_uInt16)pEntry->GetOrderDir());
sal_Int32 nIdx = m_pOrderCell->GetSelectEntryPos();
if (nIdx == LISTBOX_ENTRY_NOTFOUND)
2001-02-05 08:26:47 +00:00
nIdx = 0;
pEntry->SetOrderDir(EOrderDir(nIdx));
if(!m_bOrderByUnRelated)
{
pEntry->SetVisible(true);
2001-02-05 08:26:47 +00:00
m_pVisibleCell->GetBox().Check();
RowModified(GetBrowseRow(BROW_VIS_ROW), GetCurColumnId());
}
sNewValue = OUString::number((sal_uInt16)pEntry->GetOrderDir());
2001-02-05 08:26:47 +00:00
} break;
case BROW_COLUMNALIAS_ROW:
strOldCellContents = pEntry->GetFieldAlias();
pEntry->SetFieldAlias(m_pTextCell->GetText());
2001-04-18 10:44:59 +00:00
sNewValue = pEntry->GetFieldAlias();
2001-02-05 08:26:47 +00:00
break;
case BROW_FUNCTION_ROW:
{
strOldCellContents = pEntry->GetFunction();
sal_Int32 nPos = m_pFunctionCell->GetSelectEntryPos();
// these functions are only available in CORE
OUString sFunctionName = m_pFunctionCell->GetEntry(nPos);
OUString sGroupFunctionName = m_aFunctionStrings.getToken(comphelper::string::getTokenCount(m_aFunctionStrings, ';')-1, ';');
bool bGroupBy = false;
if ( sGroupFunctionName.equals(sFunctionName) ) // check if the function name is GROUP
2001-02-05 08:26:47 +00:00
{
bGroupBy = true;
if ( !m_bGroupByUnRelated && !pEntry->IsVisible() )
{
// we have to change the visblie flag, so we must append also an undo action
pEntry->SetVisible(true);
m_pVisibleCell->GetBox().Check();
appendUndoAction("0","1",BROW_VIS_ROW,bListAction);
RowModified(GetBrowseRow(BROW_VIS_ROW), GetCurColumnId());
}
pEntry->SetFunction(OUString());
pEntry->SetFunctionType(pEntry->GetFunctionType() & ~FKT_AGGREGATE );
}
else if ( nPos ) // we found an aggregate function
{
pEntry->SetFunctionType(pEntry->GetFunctionType() | FKT_AGGREGATE );
pEntry->SetFunction(sFunctionName);
2001-02-05 08:26:47 +00:00
}
else
{
sFunctionName.clear();
pEntry->SetFunction(OUString());
pEntry->SetFunctionType(pEntry->GetFunctionType() & ~FKT_AGGREGATE );
2001-02-05 08:26:47 +00:00
}
pEntry->SetGroupBy(bGroupBy);
sNewValue = sFunctionName;
2001-02-05 08:26:47 +00:00
}
break;
default:
{
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
2001-03-01 14:45:02 +00:00
if(!xConnection.is())
break;
2001-02-05 08:26:47 +00:00
sal_uInt16 nIdx = sal_uInt16(nRow - BROW_CRIT1_ROW);
OUString aText = comphelper::string::stripStart(m_pTextCell->GetText(), ' ');
2001-02-05 08:26:47 +00:00
OUString aCrit;
if(!aText.isEmpty())
2001-02-05 08:26:47 +00:00
{
OUString aErrorMsg;
2001-02-05 08:26:47 +00:00
Reference<XPropertySet> xColumn;
2001-09-27 05:19:05 +00:00
OSQLParseNode* pParseNode = getDesignView()->getPredicateTreeFromEntry(pEntry,aText,aErrorMsg,xColumn);
2001-02-05 08:26:47 +00:00
if (pParseNode)
{
pParseNode->parseNodeToPredicateStr(aCrit,
xConnection,
static_cast<OQueryController&>(getDesignView()->getController()).getNumberFormatter(),
2001-02-05 08:26:47 +00:00
xColumn,
pEntry->GetAlias(),
2001-02-05 08:26:47 +00:00
getDesignView()->getLocale(),
static_cast<sal_Char>(getDesignView()->getDecimalSeparator().toChar()),
&(static_cast<OQueryController&>(getDesignView()->getController()).getParser().getContext()));
2001-02-05 08:26:47 +00:00
delete pParseNode;
}
else
{
if(xColumn.is())
{
sal_Int32 nType = 0;
xColumn->getPropertyValue(PROPERTY_TYPE) >>= nType;
switch(nType)
{
case DataType::CHAR:
case DataType::VARCHAR:
case DataType::LONGVARCHAR:
2009-11-11 14:07:55 +01:00
case DataType::CLOB:
if(!aText.startsWith("'") || !aText.endsWith("'"))
2001-02-05 08:26:47 +00:00
{
aText = aText.replaceAll("'", "''");
aText = "'" + aText + "'";
2001-02-05 08:26:47 +00:00
}
break;
default:
;
}
::connectivity::OSQLParser& rParser = static_cast<OQueryController&>(getDesignView()->getController()).getParser();
pParseNode = rParser.predicateTree(aErrorMsg,
2001-09-27 05:19:05 +00:00
aText,
static_cast<OQueryController&>(getDesignView()->getController()).getNumberFormatter(),
2001-09-27 05:19:05 +00:00
xColumn);
2001-02-05 08:26:47 +00:00
if (pParseNode)
{
pParseNode->parseNodeToPredicateStr(aCrit,
xConnection,
static_cast<OQueryController&>(getDesignView()->getController()).getNumberFormatter(),
2001-02-05 08:26:47 +00:00
xColumn,
pEntry->GetAlias(),
2001-02-05 08:26:47 +00:00
getDesignView()->getLocale(),
static_cast<sal_Char>(getDesignView()->getDecimalSeparator().toChar()),
&(static_cast<OQueryController&>(getDesignView()->getController()).getParser().getContext()));
2001-02-05 08:26:47 +00:00
delete pParseNode;
}
else
{
if ( !m_bDisableErrorBox )
{
CWS-TOOLING: integrate CWS dba32a 2009-04-16 13:08:19 +0200 oj r270882 : #i14538# set property at control 2009-04-16 13:04:28 +0200 oj r270881 : #i98557# remove binary string for SRB 2009-04-15 13:19:10 +0200 oj r270838 : #i96782# use type set at view 2009-04-14 14:53:20 +0200 oj r270778 : #i96782# set initialize size for custom shape 2009-04-06 14:19:14 +0200 oj r270546 : #i88432# correct pos when < 0 while resizing 2009-04-06 13:36:13 +0200 oj r270541 : #i96782# handle toolbar and menubar differently 2009-04-06 13:33:54 +0200 oj r270540 : #i96782# handle toolbar and menubar differently 2009-04-06 12:28:23 +0200 oj r270534 : #i96782# handle toolbar and menubar differently 2009-04-06 12:27:44 +0200 oj r270533 : #i96782# handle toolbar and menubar differently 2009-04-06 12:24:32 +0200 oj r270532 : #i96782# handle toolbar and menubar differently 2009-04-06 12:15:15 +0200 oj r270531 : do not initialze when field is empty 2009-04-06 10:06:08 +0200 oj r270528 : #i96782# clean up of menubar and remove duplicates 2009-04-06 09:47:49 +0200 oj r270527 : #i96519# adjust help text dynamic 2009-04-03 13:43:20 +0200 oj r270482 : do not need to remove section from observer they are already disposed 2009-04-03 13:27:28 +0200 fs r270479 : #i97356# 2009-04-02 11:30:39 +0200 fs r270386 : UNX line ends 2009-04-02 10:54:51 +0200 fs r270379 : UNX line ends 2009-04-02 10:39:57 +0200 fs r270378 : UNX line ends 2009-04-02 10:37:24 +0200 fs r270377 : why did this survive the rebase? was removed on trunk ... 2009-03-31 13:31:12 +0200 fs r270277 : component_foo should be public 2009-03-28 00:21:01 +0100 fs r270176 : manuallly merged the changes which happened in CWS before resync to m45, where the directory had been moved from reportdesign/registry to reportbuilder/registry 2009-03-27 23:01:20 +0100 fs r270174 : CWS-TOOLING: rebase CWS dba32a to trunk@270033 (milestone: DEV300:m45) 2009-03-11 12:23:35 +0100 fs r269310 : #i99958# ensure the ControlModelLock doesn't release twice 2009-03-06 09:07:32 +0100 fs r268970 : ignore output paths in SVN's status 2009-03-06 09:07:08 +0100 fs r268969 : ignore output paths in SVN's status 2009-03-04 11:28:02 +0100 oj r268800 : copy and paste error, check correct end now 2009-03-03 15:49:11 +0100 fs r268736 : #i10000# those merges were lost during the rebase (m38->m42) 2009-03-03 13:25:27 +0100 lla r268720 : #i99652# fix wrong refactoring 2009-02-27 11:12:56 +0100 fs r268566 : beautified 2009-02-27 10:53:47 +0100 fs r268561 : doFormListening(false) only when actually isFormListening() (found during complex test case XMLFormSettings with assertions) 2009-02-26 20:55:31 +0100 fs r268546 : #i96530# set the Label property of the bound control, if we didn't create a dedicated label control 2009-02-26 11:53:09 +0100 fs r268494 : #i10000# 2009-02-26 11:27:50 +0100 fs r268493 : #i10000# 2009-02-26 11:17:08 +0100 fs r268490 : reportdesign depends on REPORTBUILDER, not REPORTDESIGN 2009-02-25 11:39:48 +0100 fs r268422 : #i10000# post-resync: INFO_ESCAPE_DATETIME got lost during rebase 2009-02-24 23:24:10 +0100 fs r268411 : CWS-TOOLING: rebase CWS dba32a to trunk@268395 (milestone: DEV300:m42) 2009-02-20 15:09:48 +0100 fs r268324 : respect ImplicitCatalog/SchemaRestriction in all necessary places 2009-02-20 13:48:10 +0100 oj r268318 : order of initialize corrected 2009-02-14 15:07:52 +0100 fs r267759 : #i98975# when an image does not have a bitmap, but a text, draw this (as placeholder) 2009-02-14 15:02:40 +0100 fs r267758 : consolidated and removed some duplicate code 2009-02-14 13:52:23 +0100 fs r267756 : #i10000# 2009-02-13 22:08:34 +0100 fs r267750 : #i100000# 2009-02-13 22:07:25 +0100 fs r267749 : #i10000# 2009-02-13 21:55:36 +0100 fs r267747 : #i10000# 2009-02-13 21:54:27 +0100 fs r267746 : use const_cast 2009-02-13 21:29:10 +0100 fs r267745 : #i10000# 2009-02-13 21:27:39 +0100 fs r267744 : #i10000# 2009-02-13 20:59:13 +0100 fs r267742 : #i10000# 2009-02-13 13:21:30 +0100 fs r267717 : better diagnostics 2009-02-13 13:17:24 +0100 fs r267715 : #i58313# support Catalog/SchemaRestriction settings, which are applied in getTables when 'all catalogs/schemas' are to be retrieved 2009-02-13 13:16:14 +0100 fs r267714 : filter out some more known global settings 2009-02-13 12:39:43 +0100 fs r267713 : #i58313# ImplicitCatalog/SchemaRestriction 2009-02-13 12:36:50 +0100 fs r267712 : when exporting data source settings, allow for properties which have a VOID default value, but are currently not VOID 2009-02-13 12:35:57 +0100 fs r267711 : implement XSet, to allow inserting properties which have a default value of VOID 2009-02-13 12:35:03 +0100 fs r267710 : +addVoidProperty 2009-02-13 10:20:08 +0100 fs r267697 : removed unused variable 2009-02-13 09:46:46 +0100 fs r267695 : refactored the table filtering code, to have a better base for introducing additional low level filters 2009-02-10 09:23:07 +0100 lla r267537 : #i10000# wrong line feed, double named variable 2009-02-09 12:13:08 +0100 oj r267508 : #i98605# notify hanlder 2009-02-09 11:50:34 +0100 oj r267507 : #i98926# solve refcount problem 2009-02-09 11:50:05 +0100 oj r267506 : #i98971# fix for simple html 2009-02-09 11:49:24 +0100 oj r267505 : #i98971# fix for simple html 2009-02-09 11:47:27 +0100 oj r267504 : invoke on copy 2009-02-09 09:51:00 +0100 fs r267500 : #i98316# 2009-02-09 09:46:10 +0100 fs r267499 : setCurrentSelection: don't reset the current form when we de-select everything 2009-02-09 09:43:45 +0100 fs r267498 : #i98316# 2009-02-08 21:25:18 +0100 fs r267496 : #i98272# introduce late ctor for cloning 2009-02-07 21:08:39 +0100 fs r267485 : #i98272# when copy-constructing a FmFormPageImpl, use the XCloneable of the forms collection, instead of XPersistObject (which is incompletely implemented) 2009-02-07 21:07:26 +0100 fs r267484 : removed obsolete include guards 2009-02-07 21:05:22 +0100 fs r267483 : #i98272# implement XCloneable 2009-02-06 15:02:48 +0100 lla r267467 : #i96523# add XImageControl 2009-02-06 14:41:38 +0100 oj r267463 : #i98926# late init when connection disposed but only when asked for 2009-02-06 13:49:57 +0100 lla r267457 : #i92860# bigint in forms doesn't allow input of values > 1, fixed 2009-02-06 13:03:55 +0100 oj r267455 : ImageScaleMode 2009-02-05 14:48:19 +0100 lla r267424 : #i89335# dropdown listboxes are 14 instead of 7 lines high 2009-02-05 13:40:00 +0100 oj r267423 : #i96945# insert new prop Opaque 2009-02-05 13:39:19 +0100 oj r267422 : #i96945# insert layer handling for hell and heaven 2009-02-05 13:29:32 +0100 lla r267420 : #i89335# add is null, is not null, is not like filter condition 2009-02-04 12:23:02 +0100 oj r267364 : #i98821# load table font settings 2009-02-04 10:05:27 +0100 oj r267351 : #i98821# load table font settings 2009-02-04 09:23:22 +0100 fs r267350 : checking persistency of UI settings in database documents - for the moment, capture table formattings (which is issue 98821) 2009-02-04 09:22:15 +0100 fs r267349 : moved some methods which are of wider interest from DatabaseDocument to FileHelper resp. TestCase 2009-02-04 08:56:27 +0100 oj r267347 : #i97586# UcbStreamHelper::CreateStream doesn't check all streamModes use different method 2009-02-04 08:23:26 +0100 oj r267346 : #i98701# check key size is >= 3 and some redesign 2009-02-03 23:29:24 +0100 fs r267345 : return the component (controller), not the frame 2009-02-03 23:28:53 +0100 fs r267344 : openExisting returns a controller now, not the frame (this was a bug) 2009-02-03 23:28:25 +0100 fs r267343 : openElement: properly return the component in the table/query case 2009-02-02 12:48:17 +0100 oj r267261 : #i96013# fix for relative path 2009-02-02 10:33:28 +0100 lla r267253 : #i98557# cleanups and consolidation 2009-02-02 09:37:23 +0100 lla r267250 : #i88432# resize will no longer move components to other sections 2009-02-02 09:08:24 +0100 oj r267245 : #i97475# write 0x1A at the end of the file 2009-01-30 19:39:20 +0100 lla r267230 : #i10000# unused parameters 2009-01-30 09:51:09 +0100 fs r267181 : onsolete 2009-01-30 09:49:27 +0100 fs r267180 : onsolete 2009-01-29 14:28:22 +0100 oj r267139 : #i96825# import cell style 2009-01-29 14:23:12 +0100 oj r267137 : #i98601# export imagescalehandler 2009-01-29 14:19:57 +0100 lla r267135 : #i98601# add ImageScaleMode 2009-01-29 13:21:08 +0100 oj r267124 : #i98601# impl ScaleMode 2009-01-29 13:20:56 +0100 oj r267123 : #i98601# impl ScaleMode 2009-01-29 08:46:40 +0100 oj r267095 : new property: ScaleMode 2009-01-29 08:45:23 +0100 oj r267094 : new ScaleMode from UnControlImageModel 2009-01-29 08:28:12 +0100 oj r267093 : #i87930# close all sub forms/reports when the desktop is going to be terminated and no db frame exists 2009-01-28 19:54:34 +0100 lla r267082 : #i98557# pictures in report wizard 2009-01-28 15:06:25 +0100 oj r267060 : #i87930# close all sub forms/reports when the desktop is going to be terminated and no db frame exists 2009-01-28 11:38:41 +0100 lla r267046 : #i76783# handle binary fields in forms 2009-01-28 09:24:43 +0100 lla r267025 : #i10000# 2009-01-28 08:40:04 +0100 fs r267024 : #i10000# 2009-01-28 08:04:43 +0100 oj r267023 : #i93456# use resource strings for function names 2009-01-27 13:26:05 +0100 oj r266988 : check data field is type field or expression 2009-01-27 13:07:17 +0100 oj r266985 : check data field length 2009-01-27 11:48:19 +0100 oj r266974 : #i96823# return dll string as column name when no alias exists 2009-01-27 09:53:11 +0100 fs r266958 : display the message of a caught exception 2009-01-27 09:44:13 +0100 fs r266957 : #i58313# when retrieving all tables, just set an empty table type filter - the connection will care for translating this, by respecting the TableTypeFilterMode setting 2009-01-27 09:36:09 +0100 fs r266956 : #i58313# getTables: per JDBC spec, is not a valid table type filter. Translate it to 'null'. 2009-01-26 11:24:49 +0100 lla r266912 : #i97865# cleanups (AddField viewable in remote mode) 2009-01-26 07:49:27 +0100 lla r266897 : #i97865# AddField opens in remote case 2009-01-26 07:48:58 +0100 lla r266896 : #i97865# AddField opens in remote case 2009-01-26 07:48:42 +0100 lla r266895 : #i97865# AddField opens in remote case 2009-01-23 15:04:40 +0100 fs r266825 : consolidate the usage of OSQLMessageBox with MessageType==Warning into OSQLWarningBox 2009-01-23 10:47:33 +0100 fs r266787 : +supportsUserAdministration 2009-01-23 10:47:11 +0100 fs r266784 : use DatabaseMetaData.supportsUserAdministration 2009-01-23 07:55:59 +0100 lla r266767 : #i10000# fix gcc compiler failures 2009-01-21 15:08:55 +0100 lla r266673 : #i97265# Labels in HC (IsDark) with other color (viewable) 2009-01-19 14:58:54 +0100 lla r266504 : #i96523# last problems with FormatKey and '0' values fixed 2009-01-19 14:58:00 +0100 lla r266503 : #i96519# AddField help text 2009-01-19 11:59:02 +0100 fs r266485 : #i96523# for formatted field models, init them with TreatAsNumber = false 2009-01-16 10:31:49 +0100 lla r266405 : #i96793# add shrink to popup menu 2009-01-16 09:21:44 +0100 lla r266401 : #i96519# AddField contains a help text 2009-01-15 11:21:49 +0100 lla r266357 : #i96523# problem with XVclWindowPeer not fixed now 2009-01-15 09:19:20 +0100 lla r266335 : #i96523# more crashes fixed. 2009-01-14 13:08:34 +0100 lla r266291 : #i96523# problems with crashes fixed 2009-01-13 10:54:24 +0100 lla r266199 : #i96523# show datasource in formattedfields new files 2009-01-13 10:52:39 +0100 lla r266198 : #i96523# show datasource in formattedfields 2009-01-13 09:41:50 +0100 lla r266197 : #i96526# handling none existance default.otr 2009-01-12 12:55:49 +0100 fs r266151 : don't expect the control model to be a BoundComponent before adding as modify listener 2009-01-12 12:51:33 +0100 fs r266149 : #i88458# let the ImageControl be an XModifyBroadcaster, so the forms runtime can notice when the user changes the control content while it does not have the focus 2009-01-09 13:41:22 +0100 fs r266080 : doc 2009-01-09 13:14:14 +0100 fs r266077 : #i97377# SetModified when order is changed via DnD 2009-01-07 09:55:40 +0100 oj r265951 : merge from master 2009-01-07 09:55:24 +0100 oj r265950 : removed observer 2009-01-07 09:55:06 +0100 oj r265949 : merge from master 2009-01-07 07:29:11 +0100 oj r265945 : shadow var changed 2009-01-06 07:25:57 +0100 oj r265893 : CWS-TOOLING: rebase CWS dba32a to trunk@265758 (milestone: DEV300:m38) 2009-01-05 13:18:22 +0100 oj r265865 : convert to unix le 2009-01-05 09:13:52 +0100 lla r265857 : #i79423# lc_ sc_ permutation fix 2009-01-02 19:40:59 +0100 lla r265847 : #i79423# section shrink icons 2008-12-22 11:37:57 +0100 lla r265749 : #i97484# move component to negative Y-position 2008-12-22 11:37:05 +0100 lla r265748 : #i97484# move component to negative Y-position 2008-12-22 11:35:33 +0100 lla r265747 : #i97484# move component to negative Y-position 2008-12-22 11:25:07 +0100 lla r265745 : #i96757# changes via property browser was not undoable 2008-12-18 15:10:38 +0100 fs r265694 : corrected an condition in doFormListening, which otherwise leads to uncommitable grid columns in documents which are loaded from disc (not in documents which are newly created) 2008-12-18 14:54:39 +0100 fs r265692 : Hide Columns text slightly changed 2008-12-18 13:44:15 +0100 fs r265683 : #i94068# properly display erros happening during a form operation - at least once, and at most once 2008-12-18 11:28:29 +0100 fs r265677 : document the new InputRequired property 2008-12-18 11:04:15 +0100 fs r265676 : #i96530# createControlLabelPair: don't actually create a label for a checkbox 2008-12-18 10:35:53 +0100 fs r265674 : #i95226# when a column is replaced, and it's the selected column, update the selection 2008-12-18 10:34:42 +0100 fs r265673 : #i95226# refactoring of the implReplaced method 2008-12-18 10:34:28 +0100 fs r265672 : #i95226# when replacing a grid column, update the property browser 2008-12-18 10:33:17 +0100 fs r265671 : when an element is removed, remove it from m_aCurrentSelection, too (if necessary) 2008-12-18 10:31:57 +0100 fs r265670 : Hide Columns text slightly changed 2008-12-18 10:15:56 +0100 lla r265669 : #i14538# do not allow to press finish button twice 2008-12-18 08:56:33 +0100 lla r265665 : #i10000# build depend=t problem hacked. 2008-12-17 20:59:10 +0100 fs r265656 : #i89821# don't let a MultiLineEdit select all text when it receives the focus 2008-12-17 12:10:54 +0100 fs r265594 : #i97356# 2008-12-17 12:06:29 +0100 fs r265593 : #i97355# Print -> Printable 2008-12-17 11:59:31 +0100 fs r265591 : #i97350# combo boxes comment on list selection (as list boxes already do) 2008-12-16 09:53:57 +0100 lla r265527 : #i96526# handling none existance default.otr 2008-12-15 14:48:39 +0100 lla r265500 : #i79423# reparing, was wrong implemented 2008-12-12 15:08:33 +0100 lla r265424 : #i10000# remove wrong carridge returns 2008-12-12 15:07:55 +0100 lla r265423 : #i10000# remove wrong carridge returns 2008-12-12 15:06:41 +0100 lla r265422 : #i10000# remove wrong carridge returns 2008-12-12 10:23:13 +0100 lla r265395 : #i95234# reset DragDelta 2008-12-12 10:11:02 +0100 lla r265393 : #i79423# pre versions of shrink buttons 2008-12-11 15:32:13 +0100 fs r265318 : prevent a deadlock during complex.dbaccess.DatabaseDocument test 2008-12-11 15:30:06 +0100 fs r265316 : prevent a deadlock during complex.dbaccess.DatabaseDocument test 2008-12-11 15:07:05 +0100 fs r265307 : removed superfluous text 2008-12-11 12:29:54 +0100 lla r265282 : #i96757# cleanup second try 2008-12-11 12:09:15 +0100 lla r265278 : #i96757# cleanup 2008-12-11 12:07:56 +0100 lla r265277 : #i95234# 2008-12-10 14:04:39 +0100 lla r265183 : #i93472# D&D fixes 2008-12-10 12:29:33 +0100 lla r265168 : #i94067# add (APP|SYS)FONT to XUnitConversion 2008-12-10 12:15:02 +0100 lla r265166 : #i94067# add APPFONT, SYSFONT to MeasureUnit 2008-12-10 11:52:10 +0100 lla r265163 : #i94067# add comments 2008-12-06 20:33:05 +0100 fs r264935 : #i10000# precompiled header 2008-12-05 09:29:26 +0100 fs r264889 : #i10000# 2008-12-05 09:07:31 +0100 fs r264888 : #i10000# 2008-12-04 13:25:46 +0100 fs r264838 : CWS-TOOLING: rebase CWS dba32a to trunk@264807 (milestone: DEV300:m37) 2008-12-03 23:49:13 +0100 fs r264808 : merge changes from trunk, to be able to do a rebase 2008-12-03 17:13:09 +0100 lla r264801 : #i91041# update documentation 2008-12-03 16:57:04 +0100 lla r264799 : #i94067# allow convert(Point|Size)ToLogic as pixel also 2008-12-02 12:36:32 +0100 lla r264687 : #i96782# bring toolbar objects to menu structure 2008-12-02 10:32:44 +0100 lla r264667 : #i86255# make property work 2008-12-02 09:22:47 +0100 lla r264659 : #i79423# add section shrink toolbar 2008-12-02 07:41:22 +0100 lla r264657 : #i86255# add check box for Escape DateTime property 2008-12-02 07:37:17 +0100 lla r264656 : #i79423# new shrink buttons 2008-11-26 11:55:28 +0100 fs r264362 : #i96541# FillPropertySet: do not only catch UnknownPropertyException when setting the Char/ParaAutoStyleName, but also care for the other exceptions which can be thrown by XPropertySet::setPropertyValue. This is actually not the real fix for #i96541#, but only a follow-up. The root cause of the issue was fixed in CWS dba301b, but this here was another (potential) bug which popped up during investigations. 2008-11-25 09:04:40 +0100 lla r264273 : #i82083# new toolbox in GroupsSorting dialog 2008-11-25 08:56:08 +0100 lla r264272 : #i94729# change token strings into string list, move class out of function 2008-11-24 15:52:22 +0100 fs r264251 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear 2008-11-24 15:51:45 +0100 fs r264249 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear 2008-11-24 15:45:21 +0100 fs r264244 : #i96532# the API default for ParamNameSubst is false 2008-11-24 15:45:04 +0100 fs r264243 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear 2008-11-24 15:44:14 +0100 fs r264241 : #i96532# slight refactoring of exporting properties which have a XML default different from the API default 2008-11-24 10:50:01 +0100 lla r264216 : #i82083# icons for new toolbox 2008-11-24 09:38:45 +0100 lla r264205 : #i82083# new toolbox in GroupsSorting dialog 2008-11-24 09:32:20 +0100 lla r264201 : #i96501# cleanup assertions 2008-11-24 09:12:55 +0100 lla r264198 : #i83082# enhancement for toolboxes, better HC comfort 2008-11-24 08:46:43 +0100 lla r264197 : #i96501# fix problem with negative positions 2008-11-21 11:44:47 +0100 fs r264118 : #i57042# introduce a counter for suspending change notifications of a given property, so recursive calls are possible 2008-11-21 11:02:17 +0100 fs r264116 : #i96388# don't call ExecuteContextMenuAction when no action was chosen by the user 2008-11-21 10:36:53 +0100 fs r264114 : #i47384# assertion was wrong 2008-11-14 12:33:15 +0100 fs r263673 : #i47318# XRowSetChangeBroadcaster/Listener, to be able to listen for changes in an XRowSetSupplier's RowSet 2008-11-14 12:30:29 +0100 fs r263672 : #i47318# more refactoring - BoundControlModels now listen at the XRowSetSupplier for changes in the supplied RowSet, to properly revoke/register old/new listeners at the RowSet - replaced ::osl::Mutex in various places with a ControlModelLock 2008-11-14 12:20:55 +0100 fs r263671 : when BUILD_TYPE includes QADEVOOO, the BUILD_QADEVOOO needs to bet set, too 2008-11-14 12:19:21 +0100 fs r263670 : oops, this was not intended to be committed 2008-11-12 11:08:10 +0100 fs r263579 : #i96096# new ctors taking UNO_QUERY_THROW 2008-11-12 09:15:54 +0100 fs r263576 : no need to load the complete dialog just to get a string which the dialog itself loads from resource 2008-11-10 17:55:45 +0100 fs r263535 : spelling in comment 2008-11-10 15:51:14 +0100 fs r263523 : #i47318# various refactorings 1. don't forward syntetic XLoadListener events from the grid control to the grid columns. Instead, forward GridColumn::XChild::setParent to the base class, which then can add itself as load listener 2. removed various occurances of XMultiServiceFactory, instead use the ::comphelper::ComponentContext 3. in O(Bound)ControlModel, have a mechanism to lock the instance (using ControlModelLock) and fire property changes when the last lock dies. 2008-11-10 12:49:24 +0100 oj r263513 : #i94729# change token strings into string list 2008-11-10 12:13:15 +0100 oj r263512 : #i95222# export chart:title style as well 2008-11-10 08:55:25 +0100 oj r263507 : #i93471# show the correct tabpage when selecting a different object 2008-11-07 23:38:29 +0100 fs r263490 : #i95977# for the event input controls, add a component extending their functionality so they're reset when the users presses DEL 2008-11-07 23:35:39 +0100 fs r263489 : during #i95977#: When a VCL Window is deleted from within VCL code, the respective WindowPeer was never disposed. Corrected this. 2008-11-07 14:57:07 +0100 fs r263420 : #i95963# human-readable display names for event bindings 2008-11-06 10:34:52 +0100 fs r263366 : #i95865# don't use library names containing InvalidZipEntryFileNames - workaround until i95409 is fixed 2008-11-06 10:33:28 +0100 fs r263365 : #i95865# copied the following change from CWS odfmetadata2 (not yet integrated) into CWS dba31d - comphelper/inc/comphelper/storagehelper.hxx, comphelper/source/misc/storagehelper.cxx: + add function IsValidZipEntryFileName (moved from module package)
2009-04-22 11:01:27 +00:00
OSQLWarningBox( this, aErrorMsg ).Execute();
}
bError = true;
2001-02-05 08:26:47 +00:00
}
}
else
{
if ( !m_bDisableErrorBox )
{
CWS-TOOLING: integrate CWS dba32a 2009-04-16 13:08:19 +0200 oj r270882 : #i14538# set property at control 2009-04-16 13:04:28 +0200 oj r270881 : #i98557# remove binary string for SRB 2009-04-15 13:19:10 +0200 oj r270838 : #i96782# use type set at view 2009-04-14 14:53:20 +0200 oj r270778 : #i96782# set initialize size for custom shape 2009-04-06 14:19:14 +0200 oj r270546 : #i88432# correct pos when < 0 while resizing 2009-04-06 13:36:13 +0200 oj r270541 : #i96782# handle toolbar and menubar differently 2009-04-06 13:33:54 +0200 oj r270540 : #i96782# handle toolbar and menubar differently 2009-04-06 12:28:23 +0200 oj r270534 : #i96782# handle toolbar and menubar differently 2009-04-06 12:27:44 +0200 oj r270533 : #i96782# handle toolbar and menubar differently 2009-04-06 12:24:32 +0200 oj r270532 : #i96782# handle toolbar and menubar differently 2009-04-06 12:15:15 +0200 oj r270531 : do not initialze when field is empty 2009-04-06 10:06:08 +0200 oj r270528 : #i96782# clean up of menubar and remove duplicates 2009-04-06 09:47:49 +0200 oj r270527 : #i96519# adjust help text dynamic 2009-04-03 13:43:20 +0200 oj r270482 : do not need to remove section from observer they are already disposed 2009-04-03 13:27:28 +0200 fs r270479 : #i97356# 2009-04-02 11:30:39 +0200 fs r270386 : UNX line ends 2009-04-02 10:54:51 +0200 fs r270379 : UNX line ends 2009-04-02 10:39:57 +0200 fs r270378 : UNX line ends 2009-04-02 10:37:24 +0200 fs r270377 : why did this survive the rebase? was removed on trunk ... 2009-03-31 13:31:12 +0200 fs r270277 : component_foo should be public 2009-03-28 00:21:01 +0100 fs r270176 : manuallly merged the changes which happened in CWS before resync to m45, where the directory had been moved from reportdesign/registry to reportbuilder/registry 2009-03-27 23:01:20 +0100 fs r270174 : CWS-TOOLING: rebase CWS dba32a to trunk@270033 (milestone: DEV300:m45) 2009-03-11 12:23:35 +0100 fs r269310 : #i99958# ensure the ControlModelLock doesn't release twice 2009-03-06 09:07:32 +0100 fs r268970 : ignore output paths in SVN's status 2009-03-06 09:07:08 +0100 fs r268969 : ignore output paths in SVN's status 2009-03-04 11:28:02 +0100 oj r268800 : copy and paste error, check correct end now 2009-03-03 15:49:11 +0100 fs r268736 : #i10000# those merges were lost during the rebase (m38->m42) 2009-03-03 13:25:27 +0100 lla r268720 : #i99652# fix wrong refactoring 2009-02-27 11:12:56 +0100 fs r268566 : beautified 2009-02-27 10:53:47 +0100 fs r268561 : doFormListening(false) only when actually isFormListening() (found during complex test case XMLFormSettings with assertions) 2009-02-26 20:55:31 +0100 fs r268546 : #i96530# set the Label property of the bound control, if we didn't create a dedicated label control 2009-02-26 11:53:09 +0100 fs r268494 : #i10000# 2009-02-26 11:27:50 +0100 fs r268493 : #i10000# 2009-02-26 11:17:08 +0100 fs r268490 : reportdesign depends on REPORTBUILDER, not REPORTDESIGN 2009-02-25 11:39:48 +0100 fs r268422 : #i10000# post-resync: INFO_ESCAPE_DATETIME got lost during rebase 2009-02-24 23:24:10 +0100 fs r268411 : CWS-TOOLING: rebase CWS dba32a to trunk@268395 (milestone: DEV300:m42) 2009-02-20 15:09:48 +0100 fs r268324 : respect ImplicitCatalog/SchemaRestriction in all necessary places 2009-02-20 13:48:10 +0100 oj r268318 : order of initialize corrected 2009-02-14 15:07:52 +0100 fs r267759 : #i98975# when an image does not have a bitmap, but a text, draw this (as placeholder) 2009-02-14 15:02:40 +0100 fs r267758 : consolidated and removed some duplicate code 2009-02-14 13:52:23 +0100 fs r267756 : #i10000# 2009-02-13 22:08:34 +0100 fs r267750 : #i100000# 2009-02-13 22:07:25 +0100 fs r267749 : #i10000# 2009-02-13 21:55:36 +0100 fs r267747 : #i10000# 2009-02-13 21:54:27 +0100 fs r267746 : use const_cast 2009-02-13 21:29:10 +0100 fs r267745 : #i10000# 2009-02-13 21:27:39 +0100 fs r267744 : #i10000# 2009-02-13 20:59:13 +0100 fs r267742 : #i10000# 2009-02-13 13:21:30 +0100 fs r267717 : better diagnostics 2009-02-13 13:17:24 +0100 fs r267715 : #i58313# support Catalog/SchemaRestriction settings, which are applied in getTables when 'all catalogs/schemas' are to be retrieved 2009-02-13 13:16:14 +0100 fs r267714 : filter out some more known global settings 2009-02-13 12:39:43 +0100 fs r267713 : #i58313# ImplicitCatalog/SchemaRestriction 2009-02-13 12:36:50 +0100 fs r267712 : when exporting data source settings, allow for properties which have a VOID default value, but are currently not VOID 2009-02-13 12:35:57 +0100 fs r267711 : implement XSet, to allow inserting properties which have a default value of VOID 2009-02-13 12:35:03 +0100 fs r267710 : +addVoidProperty 2009-02-13 10:20:08 +0100 fs r267697 : removed unused variable 2009-02-13 09:46:46 +0100 fs r267695 : refactored the table filtering code, to have a better base for introducing additional low level filters 2009-02-10 09:23:07 +0100 lla r267537 : #i10000# wrong line feed, double named variable 2009-02-09 12:13:08 +0100 oj r267508 : #i98605# notify hanlder 2009-02-09 11:50:34 +0100 oj r267507 : #i98926# solve refcount problem 2009-02-09 11:50:05 +0100 oj r267506 : #i98971# fix for simple html 2009-02-09 11:49:24 +0100 oj r267505 : #i98971# fix for simple html 2009-02-09 11:47:27 +0100 oj r267504 : invoke on copy 2009-02-09 09:51:00 +0100 fs r267500 : #i98316# 2009-02-09 09:46:10 +0100 fs r267499 : setCurrentSelection: don't reset the current form when we de-select everything 2009-02-09 09:43:45 +0100 fs r267498 : #i98316# 2009-02-08 21:25:18 +0100 fs r267496 : #i98272# introduce late ctor for cloning 2009-02-07 21:08:39 +0100 fs r267485 : #i98272# when copy-constructing a FmFormPageImpl, use the XCloneable of the forms collection, instead of XPersistObject (which is incompletely implemented) 2009-02-07 21:07:26 +0100 fs r267484 : removed obsolete include guards 2009-02-07 21:05:22 +0100 fs r267483 : #i98272# implement XCloneable 2009-02-06 15:02:48 +0100 lla r267467 : #i96523# add XImageControl 2009-02-06 14:41:38 +0100 oj r267463 : #i98926# late init when connection disposed but only when asked for 2009-02-06 13:49:57 +0100 lla r267457 : #i92860# bigint in forms doesn't allow input of values > 1, fixed 2009-02-06 13:03:55 +0100 oj r267455 : ImageScaleMode 2009-02-05 14:48:19 +0100 lla r267424 : #i89335# dropdown listboxes are 14 instead of 7 lines high 2009-02-05 13:40:00 +0100 oj r267423 : #i96945# insert new prop Opaque 2009-02-05 13:39:19 +0100 oj r267422 : #i96945# insert layer handling for hell and heaven 2009-02-05 13:29:32 +0100 lla r267420 : #i89335# add is null, is not null, is not like filter condition 2009-02-04 12:23:02 +0100 oj r267364 : #i98821# load table font settings 2009-02-04 10:05:27 +0100 oj r267351 : #i98821# load table font settings 2009-02-04 09:23:22 +0100 fs r267350 : checking persistency of UI settings in database documents - for the moment, capture table formattings (which is issue 98821) 2009-02-04 09:22:15 +0100 fs r267349 : moved some methods which are of wider interest from DatabaseDocument to FileHelper resp. TestCase 2009-02-04 08:56:27 +0100 oj r267347 : #i97586# UcbStreamHelper::CreateStream doesn't check all streamModes use different method 2009-02-04 08:23:26 +0100 oj r267346 : #i98701# check key size is >= 3 and some redesign 2009-02-03 23:29:24 +0100 fs r267345 : return the component (controller), not the frame 2009-02-03 23:28:53 +0100 fs r267344 : openExisting returns a controller now, not the frame (this was a bug) 2009-02-03 23:28:25 +0100 fs r267343 : openElement: properly return the component in the table/query case 2009-02-02 12:48:17 +0100 oj r267261 : #i96013# fix for relative path 2009-02-02 10:33:28 +0100 lla r267253 : #i98557# cleanups and consolidation 2009-02-02 09:37:23 +0100 lla r267250 : #i88432# resize will no longer move components to other sections 2009-02-02 09:08:24 +0100 oj r267245 : #i97475# write 0x1A at the end of the file 2009-01-30 19:39:20 +0100 lla r267230 : #i10000# unused parameters 2009-01-30 09:51:09 +0100 fs r267181 : onsolete 2009-01-30 09:49:27 +0100 fs r267180 : onsolete 2009-01-29 14:28:22 +0100 oj r267139 : #i96825# import cell style 2009-01-29 14:23:12 +0100 oj r267137 : #i98601# export imagescalehandler 2009-01-29 14:19:57 +0100 lla r267135 : #i98601# add ImageScaleMode 2009-01-29 13:21:08 +0100 oj r267124 : #i98601# impl ScaleMode 2009-01-29 13:20:56 +0100 oj r267123 : #i98601# impl ScaleMode 2009-01-29 08:46:40 +0100 oj r267095 : new property: ScaleMode 2009-01-29 08:45:23 +0100 oj r267094 : new ScaleMode from UnControlImageModel 2009-01-29 08:28:12 +0100 oj r267093 : #i87930# close all sub forms/reports when the desktop is going to be terminated and no db frame exists 2009-01-28 19:54:34 +0100 lla r267082 : #i98557# pictures in report wizard 2009-01-28 15:06:25 +0100 oj r267060 : #i87930# close all sub forms/reports when the desktop is going to be terminated and no db frame exists 2009-01-28 11:38:41 +0100 lla r267046 : #i76783# handle binary fields in forms 2009-01-28 09:24:43 +0100 lla r267025 : #i10000# 2009-01-28 08:40:04 +0100 fs r267024 : #i10000# 2009-01-28 08:04:43 +0100 oj r267023 : #i93456# use resource strings for function names 2009-01-27 13:26:05 +0100 oj r266988 : check data field is type field or expression 2009-01-27 13:07:17 +0100 oj r266985 : check data field length 2009-01-27 11:48:19 +0100 oj r266974 : #i96823# return dll string as column name when no alias exists 2009-01-27 09:53:11 +0100 fs r266958 : display the message of a caught exception 2009-01-27 09:44:13 +0100 fs r266957 : #i58313# when retrieving all tables, just set an empty table type filter - the connection will care for translating this, by respecting the TableTypeFilterMode setting 2009-01-27 09:36:09 +0100 fs r266956 : #i58313# getTables: per JDBC spec, is not a valid table type filter. Translate it to 'null'. 2009-01-26 11:24:49 +0100 lla r266912 : #i97865# cleanups (AddField viewable in remote mode) 2009-01-26 07:49:27 +0100 lla r266897 : #i97865# AddField opens in remote case 2009-01-26 07:48:58 +0100 lla r266896 : #i97865# AddField opens in remote case 2009-01-26 07:48:42 +0100 lla r266895 : #i97865# AddField opens in remote case 2009-01-23 15:04:40 +0100 fs r266825 : consolidate the usage of OSQLMessageBox with MessageType==Warning into OSQLWarningBox 2009-01-23 10:47:33 +0100 fs r266787 : +supportsUserAdministration 2009-01-23 10:47:11 +0100 fs r266784 : use DatabaseMetaData.supportsUserAdministration 2009-01-23 07:55:59 +0100 lla r266767 : #i10000# fix gcc compiler failures 2009-01-21 15:08:55 +0100 lla r266673 : #i97265# Labels in HC (IsDark) with other color (viewable) 2009-01-19 14:58:54 +0100 lla r266504 : #i96523# last problems with FormatKey and '0' values fixed 2009-01-19 14:58:00 +0100 lla r266503 : #i96519# AddField help text 2009-01-19 11:59:02 +0100 fs r266485 : #i96523# for formatted field models, init them with TreatAsNumber = false 2009-01-16 10:31:49 +0100 lla r266405 : #i96793# add shrink to popup menu 2009-01-16 09:21:44 +0100 lla r266401 : #i96519# AddField contains a help text 2009-01-15 11:21:49 +0100 lla r266357 : #i96523# problem with XVclWindowPeer not fixed now 2009-01-15 09:19:20 +0100 lla r266335 : #i96523# more crashes fixed. 2009-01-14 13:08:34 +0100 lla r266291 : #i96523# problems with crashes fixed 2009-01-13 10:54:24 +0100 lla r266199 : #i96523# show datasource in formattedfields new files 2009-01-13 10:52:39 +0100 lla r266198 : #i96523# show datasource in formattedfields 2009-01-13 09:41:50 +0100 lla r266197 : #i96526# handling none existance default.otr 2009-01-12 12:55:49 +0100 fs r266151 : don't expect the control model to be a BoundComponent before adding as modify listener 2009-01-12 12:51:33 +0100 fs r266149 : #i88458# let the ImageControl be an XModifyBroadcaster, so the forms runtime can notice when the user changes the control content while it does not have the focus 2009-01-09 13:41:22 +0100 fs r266080 : doc 2009-01-09 13:14:14 +0100 fs r266077 : #i97377# SetModified when order is changed via DnD 2009-01-07 09:55:40 +0100 oj r265951 : merge from master 2009-01-07 09:55:24 +0100 oj r265950 : removed observer 2009-01-07 09:55:06 +0100 oj r265949 : merge from master 2009-01-07 07:29:11 +0100 oj r265945 : shadow var changed 2009-01-06 07:25:57 +0100 oj r265893 : CWS-TOOLING: rebase CWS dba32a to trunk@265758 (milestone: DEV300:m38) 2009-01-05 13:18:22 +0100 oj r265865 : convert to unix le 2009-01-05 09:13:52 +0100 lla r265857 : #i79423# lc_ sc_ permutation fix 2009-01-02 19:40:59 +0100 lla r265847 : #i79423# section shrink icons 2008-12-22 11:37:57 +0100 lla r265749 : #i97484# move component to negative Y-position 2008-12-22 11:37:05 +0100 lla r265748 : #i97484# move component to negative Y-position 2008-12-22 11:35:33 +0100 lla r265747 : #i97484# move component to negative Y-position 2008-12-22 11:25:07 +0100 lla r265745 : #i96757# changes via property browser was not undoable 2008-12-18 15:10:38 +0100 fs r265694 : corrected an condition in doFormListening, which otherwise leads to uncommitable grid columns in documents which are loaded from disc (not in documents which are newly created) 2008-12-18 14:54:39 +0100 fs r265692 : Hide Columns text slightly changed 2008-12-18 13:44:15 +0100 fs r265683 : #i94068# properly display erros happening during a form operation - at least once, and at most once 2008-12-18 11:28:29 +0100 fs r265677 : document the new InputRequired property 2008-12-18 11:04:15 +0100 fs r265676 : #i96530# createControlLabelPair: don't actually create a label for a checkbox 2008-12-18 10:35:53 +0100 fs r265674 : #i95226# when a column is replaced, and it's the selected column, update the selection 2008-12-18 10:34:42 +0100 fs r265673 : #i95226# refactoring of the implReplaced method 2008-12-18 10:34:28 +0100 fs r265672 : #i95226# when replacing a grid column, update the property browser 2008-12-18 10:33:17 +0100 fs r265671 : when an element is removed, remove it from m_aCurrentSelection, too (if necessary) 2008-12-18 10:31:57 +0100 fs r265670 : Hide Columns text slightly changed 2008-12-18 10:15:56 +0100 lla r265669 : #i14538# do not allow to press finish button twice 2008-12-18 08:56:33 +0100 lla r265665 : #i10000# build depend=t problem hacked. 2008-12-17 20:59:10 +0100 fs r265656 : #i89821# don't let a MultiLineEdit select all text when it receives the focus 2008-12-17 12:10:54 +0100 fs r265594 : #i97356# 2008-12-17 12:06:29 +0100 fs r265593 : #i97355# Print -> Printable 2008-12-17 11:59:31 +0100 fs r265591 : #i97350# combo boxes comment on list selection (as list boxes already do) 2008-12-16 09:53:57 +0100 lla r265527 : #i96526# handling none existance default.otr 2008-12-15 14:48:39 +0100 lla r265500 : #i79423# reparing, was wrong implemented 2008-12-12 15:08:33 +0100 lla r265424 : #i10000# remove wrong carridge returns 2008-12-12 15:07:55 +0100 lla r265423 : #i10000# remove wrong carridge returns 2008-12-12 15:06:41 +0100 lla r265422 : #i10000# remove wrong carridge returns 2008-12-12 10:23:13 +0100 lla r265395 : #i95234# reset DragDelta 2008-12-12 10:11:02 +0100 lla r265393 : #i79423# pre versions of shrink buttons 2008-12-11 15:32:13 +0100 fs r265318 : prevent a deadlock during complex.dbaccess.DatabaseDocument test 2008-12-11 15:30:06 +0100 fs r265316 : prevent a deadlock during complex.dbaccess.DatabaseDocument test 2008-12-11 15:07:05 +0100 fs r265307 : removed superfluous text 2008-12-11 12:29:54 +0100 lla r265282 : #i96757# cleanup second try 2008-12-11 12:09:15 +0100 lla r265278 : #i96757# cleanup 2008-12-11 12:07:56 +0100 lla r265277 : #i95234# 2008-12-10 14:04:39 +0100 lla r265183 : #i93472# D&D fixes 2008-12-10 12:29:33 +0100 lla r265168 : #i94067# add (APP|SYS)FONT to XUnitConversion 2008-12-10 12:15:02 +0100 lla r265166 : #i94067# add APPFONT, SYSFONT to MeasureUnit 2008-12-10 11:52:10 +0100 lla r265163 : #i94067# add comments 2008-12-06 20:33:05 +0100 fs r264935 : #i10000# precompiled header 2008-12-05 09:29:26 +0100 fs r264889 : #i10000# 2008-12-05 09:07:31 +0100 fs r264888 : #i10000# 2008-12-04 13:25:46 +0100 fs r264838 : CWS-TOOLING: rebase CWS dba32a to trunk@264807 (milestone: DEV300:m37) 2008-12-03 23:49:13 +0100 fs r264808 : merge changes from trunk, to be able to do a rebase 2008-12-03 17:13:09 +0100 lla r264801 : #i91041# update documentation 2008-12-03 16:57:04 +0100 lla r264799 : #i94067# allow convert(Point|Size)ToLogic as pixel also 2008-12-02 12:36:32 +0100 lla r264687 : #i96782# bring toolbar objects to menu structure 2008-12-02 10:32:44 +0100 lla r264667 : #i86255# make property work 2008-12-02 09:22:47 +0100 lla r264659 : #i79423# add section shrink toolbar 2008-12-02 07:41:22 +0100 lla r264657 : #i86255# add check box for Escape DateTime property 2008-12-02 07:37:17 +0100 lla r264656 : #i79423# new shrink buttons 2008-11-26 11:55:28 +0100 fs r264362 : #i96541# FillPropertySet: do not only catch UnknownPropertyException when setting the Char/ParaAutoStyleName, but also care for the other exceptions which can be thrown by XPropertySet::setPropertyValue. This is actually not the real fix for #i96541#, but only a follow-up. The root cause of the issue was fixed in CWS dba301b, but this here was another (potential) bug which popped up during investigations. 2008-11-25 09:04:40 +0100 lla r264273 : #i82083# new toolbox in GroupsSorting dialog 2008-11-25 08:56:08 +0100 lla r264272 : #i94729# change token strings into string list, move class out of function 2008-11-24 15:52:22 +0100 fs r264251 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear 2008-11-24 15:51:45 +0100 fs r264249 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear 2008-11-24 15:45:21 +0100 fs r264244 : #i96532# the API default for ParamNameSubst is false 2008-11-24 15:45:04 +0100 fs r264243 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear 2008-11-24 15:44:14 +0100 fs r264241 : #i96532# slight refactoring of exporting properties which have a XML default different from the API default 2008-11-24 10:50:01 +0100 lla r264216 : #i82083# icons for new toolbox 2008-11-24 09:38:45 +0100 lla r264205 : #i82083# new toolbox in GroupsSorting dialog 2008-11-24 09:32:20 +0100 lla r264201 : #i96501# cleanup assertions 2008-11-24 09:12:55 +0100 lla r264198 : #i83082# enhancement for toolboxes, better HC comfort 2008-11-24 08:46:43 +0100 lla r264197 : #i96501# fix problem with negative positions 2008-11-21 11:44:47 +0100 fs r264118 : #i57042# introduce a counter for suspending change notifications of a given property, so recursive calls are possible 2008-11-21 11:02:17 +0100 fs r264116 : #i96388# don't call ExecuteContextMenuAction when no action was chosen by the user 2008-11-21 10:36:53 +0100 fs r264114 : #i47384# assertion was wrong 2008-11-14 12:33:15 +0100 fs r263673 : #i47318# XRowSetChangeBroadcaster/Listener, to be able to listen for changes in an XRowSetSupplier's RowSet 2008-11-14 12:30:29 +0100 fs r263672 : #i47318# more refactoring - BoundControlModels now listen at the XRowSetSupplier for changes in the supplied RowSet, to properly revoke/register old/new listeners at the RowSet - replaced ::osl::Mutex in various places with a ControlModelLock 2008-11-14 12:20:55 +0100 fs r263671 : when BUILD_TYPE includes QADEVOOO, the BUILD_QADEVOOO needs to bet set, too 2008-11-14 12:19:21 +0100 fs r263670 : oops, this was not intended to be committed 2008-11-12 11:08:10 +0100 fs r263579 : #i96096# new ctors taking UNO_QUERY_THROW 2008-11-12 09:15:54 +0100 fs r263576 : no need to load the complete dialog just to get a string which the dialog itself loads from resource 2008-11-10 17:55:45 +0100 fs r263535 : spelling in comment 2008-11-10 15:51:14 +0100 fs r263523 : #i47318# various refactorings 1. don't forward syntetic XLoadListener events from the grid control to the grid columns. Instead, forward GridColumn::XChild::setParent to the base class, which then can add itself as load listener 2. removed various occurances of XMultiServiceFactory, instead use the ::comphelper::ComponentContext 3. in O(Bound)ControlModel, have a mechanism to lock the instance (using ControlModelLock) and fire property changes when the last lock dies. 2008-11-10 12:49:24 +0100 oj r263513 : #i94729# change token strings into string list 2008-11-10 12:13:15 +0100 oj r263512 : #i95222# export chart:title style as well 2008-11-10 08:55:25 +0100 oj r263507 : #i93471# show the correct tabpage when selecting a different object 2008-11-07 23:38:29 +0100 fs r263490 : #i95977# for the event input controls, add a component extending their functionality so they're reset when the users presses DEL 2008-11-07 23:35:39 +0100 fs r263489 : during #i95977#: When a VCL Window is deleted from within VCL code, the respective WindowPeer was never disposed. Corrected this. 2008-11-07 14:57:07 +0100 fs r263420 : #i95963# human-readable display names for event bindings 2008-11-06 10:34:52 +0100 fs r263366 : #i95865# don't use library names containing InvalidZipEntryFileNames - workaround until i95409 is fixed 2008-11-06 10:33:28 +0100 fs r263365 : #i95865# copied the following change from CWS odfmetadata2 (not yet integrated) into CWS dba31d - comphelper/inc/comphelper/storagehelper.hxx, comphelper/source/misc/storagehelper.cxx: + add function IsValidZipEntryFileName (moved from module package)
2009-04-22 11:01:27 +00:00
OSQLWarningBox( this, aErrorMsg ).Execute();
}
bError = true;
2001-02-05 08:26:47 +00:00
}
}
}
strOldCellContents = pEntry->GetCriteria(nIdx);
pEntry->SetCriteria(nIdx, aCrit);
2001-04-18 10:44:59 +00:00
sNewValue = pEntry->GetCriteria(nIdx);
if(!aCrit.isEmpty() && nRow >= (GetRowCount()-1))
bAppendRow = true;
2001-02-05 08:26:47 +00:00
}
}
if(!bError && Controller())
Controller()->ClearModified();
RowModified(GetCurRow(), GetCurColumnId());
if ( bAppendRow )
{
RowInserted( GetRowCount()-1, 1, true );
m_bVisibleRow.push_back(true);
++m_nVisibleCount;
}
if(!bError)
{
// and now the undo-action for the total
2001-04-18 10:44:59 +00:00
appendUndoAction(strOldCellContents,sNewValue,nRow);
}
2001-02-05 08:26:47 +00:00
}
// did I store data in a FieldDescription which was empty before and which is not empty anymore after the changes?
2010-10-15 12:22:54 -05:00
if ( pEntry.is() && bWasEmpty && !pEntry->IsEmpty() && !bError )
2001-02-05 08:26:47 +00:00
{
// Default to visible
pEntry->SetVisible(true);
appendUndoAction("0","1",BROW_VIS_ROW,bListAction);
2001-02-05 08:26:47 +00:00
RowModified(BROW_VIS_ROW, GetCurColumnId());
// if required add empty columns
sal_uInt16 nDummy;
2001-02-05 08:26:47 +00:00
CheckFreeColumns(nDummy);
}
if ( bListAction && !m_bInUndoMode )
static_cast<OQueryController&>(getDesignView()->getController()).GetUndoManager().LeaveListAction();
2001-02-05 08:26:47 +00:00
return pEntry != NULL && !bError;
}
bool OSelectionBrowseBox::SeekRow(long nRow)
2001-02-05 08:26:47 +00:00
{
m_nSeekRow = nRow;
return nRow < m_nVisibleCount;
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::PaintCell(OutputDevice& rDev, const Rectangle& rRect, sal_uInt16 nColumnId) const
{
rDev.SetClipRegion(vcl::Region(rRect));
2001-02-05 08:26:47 +00:00
OTableFieldDescRef pEntry = NULL;
sal_uInt16 nPos = GetColumnPos(nColumnId);
2002-08-19 07:01:32 +00:00
if(getFields().size() > sal_uInt16(nPos - 1))
pEntry = getFields()[nPos - 1];
2001-02-05 08:26:47 +00:00
2010-10-15 12:22:54 -05:00
if (!pEntry.is())
2001-02-05 08:26:47 +00:00
return;
long nRow = GetRealRow(m_nSeekRow);
if (nRow == BROW_VIS_ROW)
PaintTristate(rDev, rRect, pEntry->IsVisible() ? TRISTATE_TRUE : TRISTATE_FALSE);
2001-02-05 08:26:47 +00:00
else
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
rDev.DrawText(rRect, GetCellText(nRow, nColumnId),TEXT_DRAW_VCENTER);
2001-02-05 08:26:47 +00:00
rDev.SetClipRegion( );
}
void OSelectionBrowseBox::PaintStatusCell(OutputDevice& rDev, const Rectangle& rRect) const
{
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
Rectangle aRect(rRect);
aRect.TopLeft().Y() -= 2;
OUString aLabel(ModuleRes(STR_QUERY_HANDLETEXT));
2001-02-05 08:26:47 +00:00
// from BROW_CRIT2_ROW onwards all rows are shown "or"
sal_Int32 nToken = (m_nSeekRow >= GetBrowseRow(BROW_CRIT2_ROW))
? BROW_CRIT2_ROW : GetRealRow(m_nSeekRow);
rDev.DrawText(aRect, aLabel.getToken(nToken, ';'),TEXT_DRAW_VCENTER);
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::RemoveColumn(sal_uInt16 _nColumnId)
2001-02-05 08:26:47 +00:00
{
OQueryController& rController = static_cast<OQueryController&>(getDesignView()->getController());
2001-04-30 12:02:01 +00:00
sal_uInt16 nPos = GetColumnPos(_nColumnId);
// the control should always have exactly one more column: the HandleColumn
2011-02-03 00:33:36 +01:00
OSL_ENSURE((nPos == 0) || (nPos <= getFields().size()), "OSelectionBrowseBox::RemoveColumn : invalid parameter nColId");
// ColId is synonymous to Position, and the condition should be valid
2001-02-05 08:26:47 +00:00
sal_uInt16 nCurCol = GetCurColumnId();
long nCurrentRow = GetCurRow();
2001-02-05 08:26:47 +00:00
DeactivateCell();
2002-08-19 07:01:32 +00:00
getFields().erase( getFields().begin() + (nPos - 1) );
OTableFieldDescRef pEntry = new OTableFieldDesc();
pEntry->SetColumnId(_nColumnId);
getFields().push_back(pEntry);
EditBrowseBox::RemoveColumn( _nColumnId );
InsertDataColumn( _nColumnId , OUString(), DEFAULT_SIZE, HIB_STDSTYLE, HEADERBAR_APPEND);
2001-02-05 08:26:47 +00:00
// Neuzeichnen
2002-08-19 07:01:32 +00:00
Rectangle aInvalidRect = GetInvalidRect( _nColumnId );
2001-02-05 08:26:47 +00:00
Invalidate( aInvalidRect );
ActivateCell( nCurrentRow, nCurCol );
2001-02-05 08:26:47 +00:00
rController.setModified( sal_True );
2001-02-05 08:26:47 +00:00
invalidateUndoRedo();
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::RemoveField(sal_uInt16 nColumnId )
2001-02-05 08:26:47 +00:00
{
OQueryController& rController = static_cast<OQueryController&>(getDesignView()->getController());
2001-02-05 08:26:47 +00:00
sal_uInt16 nPos = GetColumnPos(nColumnId);
2002-08-19 07:01:32 +00:00
OSL_ENSURE(getFields().size() > sal_uInt16(nPos-1),"ID is to great!");
2001-04-30 12:02:01 +00:00
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pDesc = getEntry((sal_uInt32)(nPos - 1)) ;
pDesc->SetColWidth( (sal_uInt16)GetColumnWidth(nColumnId) ); // was not stored this before
2001-02-05 08:26:47 +00:00
// trigger UndoAction
if ( !m_bInUndoMode )
{
OTabFieldDelUndoAct* pUndoAction = new OTabFieldDelUndoAct( this );
pUndoAction->SetTabFieldDescr(pDesc);
pUndoAction->SetColumnPosition(nPos);
rController.addUndoActionAndInvalidate( pUndoAction );
}
2001-02-05 08:26:47 +00:00
2002-08-19 07:01:32 +00:00
RemoveColumn(nColumnId);
2001-02-05 08:26:47 +00:00
invalidateUndoRedo();
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::adjustSelectionMode( bool _bClickedOntoHeader, bool _bClickedOntoHandleCol )
2001-02-05 08:26:47 +00:00
{
// if a Header has been selected it should be shown otherwise not
if ( _bClickedOntoHeader )
2001-02-05 08:26:47 +00:00
{
if (0 == GetSelectColumnCount() )
// I am in the correct mode if a selected column exists
if ( BROWSER_HIDESELECT == ( m_nMode & BROWSER_HIDESELECT ) )
2001-02-05 08:26:47 +00:00
{
m_nMode &= ~BROWSER_HIDESELECT;
m_nMode |= BROWSER_MULTISELECTION;
SetMode( m_nMode );
2001-02-05 08:26:47 +00:00
}
}
else if ( BROWSER_HIDESELECT != ( m_nMode & BROWSER_HIDESELECT ) )
{
if ( GetSelectColumnCount() != 0 )
SetNoSelection();
if ( _bClickedOntoHandleCol )
{
m_nMode |= BROWSER_HIDESELECT;
m_nMode &= ~BROWSER_MULTISELECTION;
SetMode( m_nMode );
2001-02-05 08:26:47 +00:00
}
}
}
void OSelectionBrowseBox::MouseButtonDown(const BrowserMouseEvent& rEvt)
{
if( rEvt.IsLeft() )
{
bool bOnHandle = HANDLE_ID == rEvt.GetColumnId();
bool bOnHeader = ( rEvt.GetRow() < 0 ) && !bOnHandle;
adjustSelectionMode( bOnHeader, bOnHandle );
}
EditBrowseBox::MouseButtonDown(rEvt);
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::MouseButtonUp(const BrowserMouseEvent& rEvt)
{
EditBrowseBox::MouseButtonUp( rEvt );
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature( ID_BROWSER_QUERY_EXECUTE );
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::KeyInput( const KeyEvent& rEvt )
{
if (IsColumnSelected(GetCurColumnId()))
{
if (rEvt.GetKeyCode().GetCode() == KEY_DELETE && // Delete rows
!rEvt.GetKeyCode().IsShift() &&
!rEvt.GetKeyCode().IsMod1())
{
RemoveField(GetCurColumnId());
return;
}
}
EditBrowseBox::KeyInput(rEvt);
2001-02-05 08:26:47 +00:00
}
2001-03-30 12:06:46 +00:00
sal_Int8 OSelectionBrowseBox::AcceptDrop( const BrowserAcceptDropEvent& rEvt )
2001-02-05 08:26:47 +00:00
{
sal_Int8 nDropAction = DND_ACTION_NONE;
if ( rEvt.GetRow() >= -1 )
{
if ( IsEditing() )
{
// allow the asterisk again
m_bDisableErrorBox = true;
SaveModified();
m_bDisableErrorBox = false;
DeactivateCell();
}
// check if the format is already supported, if not deactivate the current cell and try again
if ( OJoinExchObj::isFormatAvailable(GetDataFlavors()) )
nDropAction = DND_ACTION_LINK;
}
2001-03-30 12:06:46 +00:00
return nDropAction;
2001-03-30 12:06:46 +00:00
}
sal_Int8 OSelectionBrowseBox::ExecuteDrop( const BrowserExecuteDropEvent& _rEvt )
{
TransferableDataHelper aDropped(_rEvt.maDropEvent.Transferable);
if (!OJoinExchObj::isFormatAvailable(aDropped.GetDataFlavorExVector()))
2001-02-05 08:26:47 +00:00
{
2011-02-25 17:47:41 +01:00
OSL_FAIL("OSelectionBrowseBox::ExecuteDrop: this should never have passed AcceptDrop!");
2001-03-30 12:06:46 +00:00
return DND_ACTION_NONE;
2001-02-05 08:26:47 +00:00
}
2001-03-30 12:06:46 +00:00
OTableFieldDesc aInfo;
// insert the field at the selected position
2001-03-30 12:06:46 +00:00
OJoinExchangeData jxdSource = OJoinExchObj::GetSourceDescription(_rEvt.maDropEvent.Transferable);
InsertField(jxdSource);
return DND_ACTION_LINK;
2001-02-05 08:26:47 +00:00
}
2002-08-19 07:01:32 +00:00
OTableFieldDescRef OSelectionBrowseBox::AppendNewCol( sal_uInt16 nCnt)
2001-02-05 08:26:47 +00:00
{
// one or more can be created, but the first one will is not returned
sal_uInt32 nCount = getFields().size();
2001-02-05 08:26:47 +00:00
for (sal_uInt16 i=0 ; i<nCnt ; i++)
{
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEmptyEntry = new OTableFieldDesc();
getFields().push_back(pEmptyEntry);
sal_uInt16 nColumnId = sal::static_int_cast< sal_uInt16 >(getFields().size());
2002-08-19 07:01:32 +00:00
pEmptyEntry->SetColumnId( nColumnId );
InsertDataColumn( nColumnId , OUString(), DEFAULT_SIZE, HIB_STDSTYLE, HEADERBAR_APPEND);
2001-02-05 08:26:47 +00:00
}
return getFields()[nCount];
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::DeleteFields(const OUString& rAliasName)
2001-02-05 08:26:47 +00:00
{
if (!getFields().empty())
2001-02-05 08:26:47 +00:00
{
sal_uInt16 nColId = GetCurColumnId();
sal_uInt32 nRow = GetCurRow();
bool bWasEditing = IsEditing();
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
DeactivateCell();
OTableFields::reverse_iterator aIter = getFields().rbegin();
OTableFieldDescRef pEntry = NULL;
for(sal_uInt16 nPos=sal::static_int_cast< sal_uInt16 >(getFields().size());aIter != getFields().rend();++aIter,--nPos)
2001-02-05 08:26:47 +00:00
{
pEntry = *aIter;
if ( pEntry->GetAlias().equals( rAliasName ) )
{
RemoveField( GetColumnId( nPos ) );
break;
}
2001-02-05 08:26:47 +00:00
}
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
ActivateCell(nRow , nColId);
}
}
void OSelectionBrowseBox::SetColWidth(sal_uInt16 nColId, long nNewWidth)
{
bool bWasEditing = IsEditing();
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
DeactivateCell();
// create the BaseClass
2001-02-05 08:26:47 +00:00
SetColumnWidth(nColId, nNewWidth);
// tell it the FieldDescription
OTableFieldDescRef pEntry = getEntry(GetColumnPos(nColId) - 1);
2010-10-15 12:22:54 -05:00
if (pEntry.is())
2001-02-23 14:04:37 +00:00
pEntry->SetColWidth(sal_uInt16(GetColumnWidth(nColId)));
2001-02-05 08:26:47 +00:00
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
ActivateCell(GetCurRow(), GetCurColumnId());
}
Rectangle OSelectionBrowseBox::GetInvalidRect( sal_uInt16 nColId )
{
// The rectangle is the full output area of the window
2001-02-05 08:26:47 +00:00
Rectangle aInvalidRect( Point(0,0), GetOutputSizePixel() );
// now update the left side
2001-02-14 13:54:12 +00:00
Rectangle aFieldRect(GetCellRect( 0, nColId )); // used instead of GetFieldRectPixel
2001-02-05 08:26:47 +00:00
aInvalidRect.Left() = aFieldRect.Left();
return aInvalidRect;
}
2011-09-12 14:58:12 +02:00
void OSelectionBrowseBox::InsertColumn(OTableFieldDescRef pEntry, sal_uInt16& _nColumnPosition)
2001-02-05 08:26:47 +00:00
{
// the control should have exactly one more column: the HandleColumn
2011-09-12 14:58:12 +02:00
OSL_ENSURE(_nColumnPosition == BROWSER_INVALIDID || (_nColumnPosition <= (long)getFields().size()), "OSelectionBrowseBox::InsertColumn : invalid parameter nColId.");
// -1 means at the end. Count means at the end, others denotes a correct position
2001-02-05 08:26:47 +00:00
sal_uInt16 nCurCol = GetCurColumnId();
long nCurrentRow = GetCurRow();
2001-02-05 08:26:47 +00:00
DeactivateCell();
2014-04-11 09:21:31 +02:00
// remember the column id of the current position
2011-09-12 14:58:12 +02:00
sal_uInt16 nColumnId = GetColumnId(_nColumnPosition);
// put at the end of the list if to small or to big,
if ((_nColumnPosition == BROWSER_INVALIDID) || (_nColumnPosition >= getFields().size())) // append the field
2001-02-05 08:26:47 +00:00
{
if (FindFirstFreeCol(_nColumnPosition) == NULL) // no more free columns
2001-02-05 08:26:47 +00:00
{
AppendNewCol(1);
2011-09-12 14:58:12 +02:00
_nColumnPosition = sal::static_int_cast< sal_uInt16 >(
getFields().size());
2001-02-05 08:26:47 +00:00
}
else
++_nColumnPosition; // within the list
2011-09-12 14:58:12 +02:00
nColumnId = GetColumnId(_nColumnPosition);
2002-08-19 07:01:32 +00:00
pEntry->SetColumnId( nColumnId );
2011-09-12 14:58:12 +02:00
getFields()[ _nColumnPosition - 1] = pEntry;
2001-02-05 08:26:47 +00:00
}
2002-08-19 07:01:32 +00:00
// check if the column ids are identical, if not we have to move
if ( pEntry->GetColumnId() != nColumnId )
{
sal_uInt16 nOldPosition = GetColumnPos(pEntry->GetColumnId());
2002-08-19 07:01:32 +00:00
OSL_ENSURE( nOldPosition != 0,"Old position was 0. Not possible!");
2011-09-12 14:58:12 +02:00
SetColumnPos(pEntry->GetColumnId(),_nColumnPosition);
2002-08-19 07:01:32 +00:00
// we have to delete an empty field for the fields list, because the columns must have equal length
if ( nOldPosition > 0 && nOldPosition <= getFields().size() )
getFields()[nOldPosition - 1] = pEntry;
ColumnMoved(pEntry->GetColumnId(),false);
2010-11-29 23:29:33 +09:00
}
CWS-TOOLING: integrate CWS dba31e 2008-11-19 12:36:23 +0100 msc r263980 : i96104 2008-11-19 12:31:19 +0100 msc r263979 : i96104 2008-11-19 12:21:55 +0100 msc r263977 : i96104 2008-11-19 12:18:53 +0100 msc r263976 : i96104 2008-11-18 09:09:45 +0100 oj r263746 : disable color entry when area is set 2008-11-18 08:37:52 +0100 oj r263741 : #remove sub report entry 2008-11-17 11:20:25 +0100 fs r263708 : #i10000# 2008-11-17 11:06:52 +0100 fs r263706 : minimal version now is 3.1 2008-11-12 22:25:59 +0100 fs r263621 : #i96150# 2008-11-12 22:20:02 +0100 fs r263620 : rebased to m34 2008-11-12 21:39:41 +0100 fs r263618 : MANUAL REBASE: rebase CWS dba31d to DEV300_m34 2008-11-12 13:54:58 +0100 fs r263597 : #i96134# MediaDescriptor.URL is to be preferred over MediaDescriptor.FileName. Nonetheless, ensure both are handled 2008-11-12 13:53:40 +0100 fs r263596 : #i96134# re-enabled the code for #i41897#, a better fix is to come 2008-11-12 12:48:21 +0100 fs r263585 : #i96134# disable saving URLs of file-base databases relatively 2008-11-11 16:11:11 +0100 msc r263566 : #i96104# 2008-11-05 09:09:47 +0100 oj r263342 : #i88727# color noe added 2008-11-05 08:41:43 +0100 oj r263341 : #i77916# zoom added 2008-11-04 21:24:15 +0100 fs r263339 : disposing: call disposeAndClear without own mutex locked - some of our listeners insist on locking the SolarMutex, which sometimes led to deadlocks on the complex test cases 2008-11-04 21:23:15 +0100 fs r263338 : remove SolarMutex locking - this happned in CWS dba31c (in the CVS version), which this CWS was created from, but seems to got lost during resync 2008-11-04 20:49:50 +0100 fs r263335 : docu formatting 2008-11-04 20:06:39 +0100 fs r263334 : #i95826# use m_aMutex, not a DocumentGuard (wrongly resolved merge conflicts) 2008-11-04 17:36:29 +0100 fs r263332 : #i92688# properly revoke as XEventListener from m_xActiveController when disposing 2008-11-04 14:49:34 +0100 fs r263324 : #i92322# enable Input Required if EmptyIsNULL does not exist at the control 2008-10-31 11:10:04 +0100 oj r262857 : merge from cvs to svn 2008-10-31 09:46:45 +0100 oj r262853 : merge from cvs to svn 2008-10-31 08:46:37 +0100 oj r262849 : merge from cvs to svn 2008-10-31 08:44:24 +0100 oj r262848 : merge from cvs to svn 2008-10-31 08:43:33 +0100 oj r262847 : merge from cvs to svn 2008-10-31 08:42:28 +0100 oj r262846 : merge from cvs to svn 2008-10-31 08:41:58 +0100 oj r262845 : merge from cvs to svn 2008-10-31 08:41:32 +0100 oj r262844 : merge from cvs to svn 2008-10-28 12:19:50 +0100 oj r262733 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:42 +0100 oj r262732 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:36 +0100 oj r262731 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:31 +0100 oj r262730 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:22 +0100 oj r262729 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:18 +0100 oj r262728 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:10 +0100 oj r262727 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:06 +0100 oj r262726 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:05 +0100 oj r262725 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:01 +0100 oj r262724 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:50 +0100 oj r262723 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:41 +0100 oj r262722 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:40 +0100 oj r262721 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:27 +0100 oj r262720 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:10 +0100 oj r262719 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:01 +0100 oj r262718 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:17:39 +0100 oj r262717 : #iXXXXX#: migrate CWS dba31e to SVN
2008-12-01 12:31:27 +00:00
if ( pEntry->GetFunctionType() & (FKT_AGGREGATE) )
{
OUString sFunctionName = pEntry->GetFunction();
CWS-TOOLING: integrate CWS dba31e 2008-11-19 12:36:23 +0100 msc r263980 : i96104 2008-11-19 12:31:19 +0100 msc r263979 : i96104 2008-11-19 12:21:55 +0100 msc r263977 : i96104 2008-11-19 12:18:53 +0100 msc r263976 : i96104 2008-11-18 09:09:45 +0100 oj r263746 : disable color entry when area is set 2008-11-18 08:37:52 +0100 oj r263741 : #remove sub report entry 2008-11-17 11:20:25 +0100 fs r263708 : #i10000# 2008-11-17 11:06:52 +0100 fs r263706 : minimal version now is 3.1 2008-11-12 22:25:59 +0100 fs r263621 : #i96150# 2008-11-12 22:20:02 +0100 fs r263620 : rebased to m34 2008-11-12 21:39:41 +0100 fs r263618 : MANUAL REBASE: rebase CWS dba31d to DEV300_m34 2008-11-12 13:54:58 +0100 fs r263597 : #i96134# MediaDescriptor.URL is to be preferred over MediaDescriptor.FileName. Nonetheless, ensure both are handled 2008-11-12 13:53:40 +0100 fs r263596 : #i96134# re-enabled the code for #i41897#, a better fix is to come 2008-11-12 12:48:21 +0100 fs r263585 : #i96134# disable saving URLs of file-base databases relatively 2008-11-11 16:11:11 +0100 msc r263566 : #i96104# 2008-11-05 09:09:47 +0100 oj r263342 : #i88727# color noe added 2008-11-05 08:41:43 +0100 oj r263341 : #i77916# zoom added 2008-11-04 21:24:15 +0100 fs r263339 : disposing: call disposeAndClear without own mutex locked - some of our listeners insist on locking the SolarMutex, which sometimes led to deadlocks on the complex test cases 2008-11-04 21:23:15 +0100 fs r263338 : remove SolarMutex locking - this happned in CWS dba31c (in the CVS version), which this CWS was created from, but seems to got lost during resync 2008-11-04 20:49:50 +0100 fs r263335 : docu formatting 2008-11-04 20:06:39 +0100 fs r263334 : #i95826# use m_aMutex, not a DocumentGuard (wrongly resolved merge conflicts) 2008-11-04 17:36:29 +0100 fs r263332 : #i92688# properly revoke as XEventListener from m_xActiveController when disposing 2008-11-04 14:49:34 +0100 fs r263324 : #i92322# enable Input Required if EmptyIsNULL does not exist at the control 2008-10-31 11:10:04 +0100 oj r262857 : merge from cvs to svn 2008-10-31 09:46:45 +0100 oj r262853 : merge from cvs to svn 2008-10-31 08:46:37 +0100 oj r262849 : merge from cvs to svn 2008-10-31 08:44:24 +0100 oj r262848 : merge from cvs to svn 2008-10-31 08:43:33 +0100 oj r262847 : merge from cvs to svn 2008-10-31 08:42:28 +0100 oj r262846 : merge from cvs to svn 2008-10-31 08:41:58 +0100 oj r262845 : merge from cvs to svn 2008-10-31 08:41:32 +0100 oj r262844 : merge from cvs to svn 2008-10-28 12:19:50 +0100 oj r262733 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:42 +0100 oj r262732 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:36 +0100 oj r262731 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:31 +0100 oj r262730 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:22 +0100 oj r262729 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:18 +0100 oj r262728 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:10 +0100 oj r262727 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:06 +0100 oj r262726 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:05 +0100 oj r262725 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:01 +0100 oj r262724 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:50 +0100 oj r262723 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:41 +0100 oj r262722 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:40 +0100 oj r262721 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:27 +0100 oj r262720 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:10 +0100 oj r262719 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:01 +0100 oj r262718 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:17:39 +0100 oj r262717 : #iXXXXX#: migrate CWS dba31e to SVN
2008-12-01 12:31:27 +00:00
if ( GetFunctionName(sal_uInt32(-1),sFunctionName) )
pEntry->SetFunction(sFunctionName);
2002-08-19 07:01:32 +00:00
}
2001-02-05 08:26:47 +00:00
CWS-TOOLING: integrate CWS dba31d 2008-12-08 16:22:07 +0100 rt r265005 : Remove DOS lineends 2008-12-05 13:56:24 +0100 fs r264906 : #i10000# removed unreachable statement 2008-11-20 11:41:26 +0100 fs r264037 : merged in the fix for #i95865# (it was wrongly committed to CWS dba32a, should have been here) 2008-11-20 11:34:24 +0100 fs r264036 : line ends 2008-11-14 08:44:50 +0100 lla r263665 : #i10000# comparsion between int and uint fixed 2008-11-13 13:31:12 +0100 lla r263641 : #i10000# build problem fixed 2008-11-13 11:20:01 +0100 lla r263625 : #i96130# hard code name of extension 2008-11-12 11:13:41 +0100 fs r263582 : #i96096# when opening a SRB-report fails due to the missing SRB extension, log this as warning only, and proceed with the migration 2008-11-12 11:11:35 +0100 fs r263581 : #i96096# ContentType handling. Now all contents deliver proper results in XContent::getContentType 2008-11-12 11:10:11 +0100 fs r263580 : #i96096# new ctors taking UNO_QUERY_THROW 2008-11-11 10:10:13 +0100 lla r263546 : CWS-TOOLING: rebase CWS dba31d to trunk@263288 (milestone: DEV300:m35) 2008-11-06 15:55:39 +0100 oj r263393 : #i93452# get field from model fallbackis the name 2008-11-06 15:31:47 +0100 oj r263392 : #i93465# remeber location of floating windows 2008-11-06 13:36:24 +0100 oj r263381 : #i93450# check typemap for null 2008-11-06 13:28:49 +0100 oj r263379 : #i93020# empty column list boxes when new relation should be created 2008-11-06 12:33:53 +0100 oj r263377 : #i93012# set border to default : flat 2008-11-06 12:26:54 +0100 oj r263375 : #i74927# do some less calls for odbc 2008-11-06 09:34:01 +0100 oj r263362 : #i93383# grabFocus in suspend to get allmodified cells 2008-11-03 21:01:39 +0100 oj r263308 : #i86739# check if slash can be valid for tables 2008-11-03 14:40:21 +0100 oj r263287 : #i86739# check if slash can be valid for tables 2008-11-03 14:32:17 +0100 oj r263286 : #i95227# column width 2008-11-03 14:27:26 +0100 oj r263285 : link fwe 2008-11-03 14:24:54 +0100 oj r263284 : #i95235# changed to hold no ref only weak 2008-10-31 11:21:48 +0100 oj r262859 : #i93459# set images add menu entry 2008-10-31 09:06:37 +0100 oj r262851 : #i88629# correct fileopen filter for database odb files 2008-10-30 15:01:04 +0100 oj r262828 : #i95229# set filter at the composer 2008-10-29 15:57:41 +0100 oj r262817 : #i95235# changed to hold no ref only weak 2008-10-29 15:57:19 +0100 oj r262816 : #i95235# changed to hold no ref only weak 2008-10-29 15:57:03 +0100 oj r262815 : #i95235# changed to hold no ref only weak 2008-10-29 15:56:15 +0100 oj r262814 : #i95235# filtermanger changed to hold no ref only weak 2008-10-29 10:32:39 +0100 oj r262773 : #i93474# use correct table name 2008-10-28 13:49:33 +0100 lla r262744 : #i95524# make an Invalidate and refresh on Tables 2008-10-28 10:45:02 +0100 fs r262707 : line ends 2008-10-28 10:34:42 +0100 fs r262706 : #i95522# don't expect the component to live in a TopWindow 2008-10-28 08:30:40 +0100 lla r262696 : #i93176# set preview mode on view 2008-10-28 07:56:57 +0100 oj r262694 : merge cvs svn 2008-10-27 14:13:51 +0100 oj r262673 : #i94129# use dummy data 2008-10-27 12:38:45 +0100 fs r262669 : #i94125# rework ScrollColumns 2008-10-23 15:53:57 +0200 oj r262624 : #i94568# do not load the embeddedobj just copy the storage 2008-10-23 14:39:14 +0200 oj r262622 : #i94129# handle chart correctly 2008-10-22 10:51:19 +0200 lla r262582 : #i94115# problem with left walk chart shape fixed 2008-10-22 07:47:48 +0200 oj r262576 : #i94455# rename now do not use remove insert 2008-10-22 07:47:27 +0200 oj r262575 : #i94455# rename now do not use remove insert 2008-10-21 12:46:26 +0200 lla r262567 : #i93845# extra check if default schema doesn't exists, fix assertion
2008-12-09 07:25:38 +00:00
nColumnId = pEntry->GetColumnId();
SetColWidth(nColumnId,getDesignView()->getColWidth(GetColumnPos(nColumnId)-1));
// redraw
CWS-TOOLING: integrate CWS dba31d 2008-12-08 16:22:07 +0100 rt r265005 : Remove DOS lineends 2008-12-05 13:56:24 +0100 fs r264906 : #i10000# removed unreachable statement 2008-11-20 11:41:26 +0100 fs r264037 : merged in the fix for #i95865# (it was wrongly committed to CWS dba32a, should have been here) 2008-11-20 11:34:24 +0100 fs r264036 : line ends 2008-11-14 08:44:50 +0100 lla r263665 : #i10000# comparsion between int and uint fixed 2008-11-13 13:31:12 +0100 lla r263641 : #i10000# build problem fixed 2008-11-13 11:20:01 +0100 lla r263625 : #i96130# hard code name of extension 2008-11-12 11:13:41 +0100 fs r263582 : #i96096# when opening a SRB-report fails due to the missing SRB extension, log this as warning only, and proceed with the migration 2008-11-12 11:11:35 +0100 fs r263581 : #i96096# ContentType handling. Now all contents deliver proper results in XContent::getContentType 2008-11-12 11:10:11 +0100 fs r263580 : #i96096# new ctors taking UNO_QUERY_THROW 2008-11-11 10:10:13 +0100 lla r263546 : CWS-TOOLING: rebase CWS dba31d to trunk@263288 (milestone: DEV300:m35) 2008-11-06 15:55:39 +0100 oj r263393 : #i93452# get field from model fallbackis the name 2008-11-06 15:31:47 +0100 oj r263392 : #i93465# remeber location of floating windows 2008-11-06 13:36:24 +0100 oj r263381 : #i93450# check typemap for null 2008-11-06 13:28:49 +0100 oj r263379 : #i93020# empty column list boxes when new relation should be created 2008-11-06 12:33:53 +0100 oj r263377 : #i93012# set border to default : flat 2008-11-06 12:26:54 +0100 oj r263375 : #i74927# do some less calls for odbc 2008-11-06 09:34:01 +0100 oj r263362 : #i93383# grabFocus in suspend to get allmodified cells 2008-11-03 21:01:39 +0100 oj r263308 : #i86739# check if slash can be valid for tables 2008-11-03 14:40:21 +0100 oj r263287 : #i86739# check if slash can be valid for tables 2008-11-03 14:32:17 +0100 oj r263286 : #i95227# column width 2008-11-03 14:27:26 +0100 oj r263285 : link fwe 2008-11-03 14:24:54 +0100 oj r263284 : #i95235# changed to hold no ref only weak 2008-10-31 11:21:48 +0100 oj r262859 : #i93459# set images add menu entry 2008-10-31 09:06:37 +0100 oj r262851 : #i88629# correct fileopen filter for database odb files 2008-10-30 15:01:04 +0100 oj r262828 : #i95229# set filter at the composer 2008-10-29 15:57:41 +0100 oj r262817 : #i95235# changed to hold no ref only weak 2008-10-29 15:57:19 +0100 oj r262816 : #i95235# changed to hold no ref only weak 2008-10-29 15:57:03 +0100 oj r262815 : #i95235# changed to hold no ref only weak 2008-10-29 15:56:15 +0100 oj r262814 : #i95235# filtermanger changed to hold no ref only weak 2008-10-29 10:32:39 +0100 oj r262773 : #i93474# use correct table name 2008-10-28 13:49:33 +0100 lla r262744 : #i95524# make an Invalidate and refresh on Tables 2008-10-28 10:45:02 +0100 fs r262707 : line ends 2008-10-28 10:34:42 +0100 fs r262706 : #i95522# don't expect the component to live in a TopWindow 2008-10-28 08:30:40 +0100 lla r262696 : #i93176# set preview mode on view 2008-10-28 07:56:57 +0100 oj r262694 : merge cvs svn 2008-10-27 14:13:51 +0100 oj r262673 : #i94129# use dummy data 2008-10-27 12:38:45 +0100 fs r262669 : #i94125# rework ScrollColumns 2008-10-23 15:53:57 +0200 oj r262624 : #i94568# do not load the embeddedobj just copy the storage 2008-10-23 14:39:14 +0200 oj r262622 : #i94129# handle chart correctly 2008-10-22 10:51:19 +0200 lla r262582 : #i94115# problem with left walk chart shape fixed 2008-10-22 07:47:48 +0200 oj r262576 : #i94455# rename now do not use remove insert 2008-10-22 07:47:27 +0200 oj r262575 : #i94455# rename now do not use remove insert 2008-10-21 12:46:26 +0200 lla r262567 : #i93845# extra check if default schema doesn't exists, fix assertion
2008-12-09 07:25:38 +00:00
Rectangle aInvalidRect = GetInvalidRect( nColumnId );
2001-02-05 08:26:47 +00:00
Invalidate( aInvalidRect );
ActivateCell( nCurrentRow, nCurCol );
static_cast<OQueryController&>(getDesignView()->getController()).setModified( sal_True );
2001-02-05 08:26:47 +00:00
invalidateUndoRedo();
2001-02-05 08:26:47 +00:00
}
OTableFieldDescRef OSelectionBrowseBox::InsertField(const OJoinExchangeData& jxdSource, sal_uInt16 _nColumnPosition, bool bVis, bool bActivate)
2001-02-05 08:26:47 +00:00
{
OQueryTableWindow* pSourceWin = static_cast<OQueryTableWindow*>(jxdSource.pListBox->GetTabWin());
if (!pSourceWin)
return NULL;
// name and position of the selected field
OUString aFieldName = jxdSource.pListBox->GetEntryText(jxdSource.pEntry);
2001-02-05 08:26:47 +00:00
sal_uInt32 nFieldIndex = jxdSource.pListBox->GetModel()->GetAbsPos(jxdSource.pEntry);
OTableFieldInfo* pInf = static_cast<OTableFieldInfo*>(jxdSource.pEntry->GetUserData());
// construct DragInfo, such that I use the other InsertField
OTableFieldDescRef aInfo = new OTableFieldDesc(pSourceWin->GetTableName(),aFieldName);
aInfo->SetTabWindow(pSourceWin);
aInfo->SetFieldIndex(nFieldIndex);
aInfo->SetFieldType(pInf->GetKeyType());
aInfo->SetAlias(pSourceWin->GetAliasName());
2001-02-05 08:26:47 +00:00
aInfo->SetDataType(pInf->GetDataType());
aInfo->SetVisible(bVis);
2001-02-05 08:26:47 +00:00
2011-09-12 14:58:12 +02:00
return InsertField(aInfo, _nColumnPosition, bVis, bActivate);
2001-02-05 08:26:47 +00:00
}
OTableFieldDescRef OSelectionBrowseBox::InsertField(const OTableFieldDescRef& _rInfo, sal_uInt16 _nColumnPosition, bool bVis, bool bActivate)
2001-02-05 08:26:47 +00:00
{
if(m_nMaxColumns && m_nMaxColumns <= FieldsCount())
return NULL;
if (bActivate)
SaveModified();
// new column description
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEntry = _rInfo;
2001-02-05 08:26:47 +00:00
pEntry->SetVisible(bVis);
// insert column
2011-09-12 14:58:12 +02:00
InsertColumn( pEntry, _nColumnPosition );
2001-02-05 08:26:47 +00:00
if ( !m_bInUndoMode )
{
// trigger UndoAction
OTabFieldCreateUndoAct* pUndoAction = new OTabFieldCreateUndoAct( this );
pUndoAction->SetTabFieldDescr( pEntry );
2011-09-12 14:58:12 +02:00
pUndoAction->SetColumnPosition(_nColumnPosition);
getDesignView()->getController().addUndoActionAndInvalidate( pUndoAction );
}
2001-02-05 08:26:47 +00:00
return pEntry;
}
sal_uInt16 OSelectionBrowseBox::FieldsCount()
{
OTableFields::iterator aIter = getFields().begin();
2001-02-05 08:26:47 +00:00
sal_uInt16 nCount = 0;
while (aIter != getFields().end())
2001-02-05 08:26:47 +00:00
{
2010-10-15 12:22:54 -05:00
if ((*aIter).is() && !(*aIter)->IsEmpty())
++nCount;
2001-02-05 08:26:47 +00:00
++aIter;
}
return nCount;
}
OTableFieldDescRef OSelectionBrowseBox::FindFirstFreeCol(sal_uInt16& _rColumnPosition )
2001-02-05 08:26:47 +00:00
{
OTableFields::iterator aIter = getFields().begin();
2002-08-19 07:01:32 +00:00
OTableFields::iterator aEnd = getFields().end();
_rColumnPosition = BROWSER_INVALIDID;
while ( aIter != aEnd )
2001-02-05 08:26:47 +00:00
{
2002-08-19 07:01:32 +00:00
++_rColumnPosition;
OTableFieldDescRef pEntry = (*aIter);
2010-10-15 12:22:54 -05:00
if ( pEntry.is() && pEntry->IsEmpty() )
2002-08-19 07:01:32 +00:00
return pEntry;
2001-02-05 08:26:47 +00:00
++aIter;
}
return NULL;
}
void OSelectionBrowseBox::CheckFreeColumns(sal_uInt16& _rColumnPosition)
2001-02-05 08:26:47 +00:00
{
2002-08-19 07:01:32 +00:00
if (FindFirstFreeCol(_rColumnPosition) == NULL)
2001-02-05 08:26:47 +00:00
{
// it is full, append a Packen column
2001-02-05 08:26:47 +00:00
AppendNewCol(DEFAULT_QUERY_COLS);
2010-10-15 12:22:54 -05:00
OSL_VERIFY(FindFirstFreeCol(_rColumnPosition).is());
2001-02-05 08:26:47 +00:00
}
}
void OSelectionBrowseBox::AddGroupBy( const OTableFieldDescRef& rInfo , sal_uInt32 /*_nCurrentPos*/)
2001-02-05 08:26:47 +00:00
{
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
2001-03-01 14:45:02 +00:00
if(!xConnection.is())
return;
2011-02-03 00:33:36 +01:00
OSL_ENSURE(!rInfo->IsEmpty(),"AddGroupBy:: OTableFieldDescRef sollte nicht Empty sein!");
OTableFieldDescRef pEntry;
const Reference<XDatabaseMetaData> xMeta = xConnection->getMetaData();
const ::comphelper::UStringMixEqual bCase(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers());
//sal_Bool bAppend = sal_False;
OTableFields& rFields = getFields();
OTableFields::iterator aIter = rFields.begin();
CWS-TOOLING: integrate CWS dbaperf2 2009-06-22 11:04:36 +0200 msc r273202 : #100000# fix to run this test 2009-06-22 09:41:04 +0200 msc r273200 : #100000# correct case 2009-06-22 09:02:42 +0200 msc r273199 : new SRB 2009-06-22 08:53:26 +0200 msc r273198 : #100000 2009-06-15 12:36:32 +0200 oj r272976 : test 2009-06-12 14:23:23 +0200 msc r272918 : #101587# unused feature was removed 2009-06-12 06:45:17 +0200 oj r272903 : use GUI instead of OS 2009-06-11 09:12:30 +0200 oj r272845 : remove unused dep 2009-06-11 09:11:09 +0200 oj r272844 : ColumnAliasInOrderBy not supported 2009-06-11 08:27:00 +0200 oj r272843 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@272827 (milestone: DEV300:m50) 2009-06-10 15:30:17 +0200 msc r272822 : #100000 2009-06-10 15:27:40 +0200 msc r272820 : #102515# new function for the database type list 2009-06-10 15:26:09 +0200 msc r272818 : move file to dbaccess/tools/dbcreatetools.inc 2009-06-10 15:20:10 +0200 msc r272816 : #102515# new function for the database type list 2009-06-10 12:34:46 +0200 oj r272803 : #i101587# check extension 2009-06-10 11:53:45 +0200 oj r272800 : remove unused code 2009-06-09 09:57:25 +0200 oj r272752 : #i101587# EscapeDateTime moved into features section 2009-06-09 09:56:26 +0200 oj r272751 : enable finish 2009-06-08 11:50:37 +0200 oj r272726 : #i102588# move convert tzo saveDataSource 2009-06-05 11:54:20 +0200 jsk r272676 : #i102515# - NEW: Functions to retrieve Database names from API 2009-06-05 10:52:22 +0200 jsk r272671 : NEW: Functions to retrieve Database names from API 2009-06-05 09:36:54 +0200 oj r272666 : handle win and unx differently 2009-06-05 09:36:28 +0200 oj r272665 : handle win and unx differently 2009-06-04 13:41:56 +0200 oj r272625 : #i101268# make use of stringbuffer instead of oustring 2009-06-04 10:18:14 +0200 oj r272612 : add SAL_DLLPUBLIC_EXPORT 2009-05-28 10:56:33 +0200 oj r272381 : #i101587# create langpacks 2009-05-28 10:41:59 +0200 oj r272380 : #i101587# create langpacks 2009-05-28 10:29:30 +0200 oj r272379 : #i101587# create langpacks 2009-05-07 10:11:46 +0200 oj r271635 : fix compile warnings 2009-05-07 07:01:31 +0200 oj r271619 : change type from int32 to PathID 2009-05-07 06:53:19 +0200 oj r271618 : add all 2009-05-06 14:57:02 +0200 oj r271595 : add missing lib 2009-05-06 14:56:54 +0200 oj r271594 : no used anymore 2009-05-06 14:56:08 +0200 oj r271593 : no used anymore 2009-05-06 14:54:25 +0200 oj r271592 : no used anymore 2009-05-06 14:45:59 +0200 oj r271591 : add missing lib 2009-05-06 14:41:54 +0200 oj r271590 : change wnt 2009-05-06 14:22:21 +0200 oj r271589 : #i101587# use config for the drivers 2009-05-06 14:21:39 +0200 oj r271588 : #i101587# add new set for metadata and config data for driver 2009-05-06 14:19:36 +0200 oj r271587 : #i101587# handle metadata and props of driver 2009-05-06 10:11:11 +0200 oj r271570 : #i101587# correct wrong use of reference 2009-05-06 09:24:33 +0200 oj r271567 : #i101587# add new set for metadata 2009-05-06 08:52:06 +0200 oj r271563 : #i101587# add driver configuration 2009-05-06 08:51:04 +0200 oj r271562 : #i101587# add driver configuration 2009-05-04 10:24:41 +0200 oj r271442 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@271427 (milestone: DEV300:m47) 2009-04-28 07:06:22 +0200 oj r271303 : compile error 2009-04-27 14:12:48 +0200 oj r271270 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 14:12:27 +0200 oj r271269 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 09:30:10 +0200 oj r271255 : use string buffer when possible 2009-04-24 11:56:01 +0200 oj r271207 : #i101268# remove end() call from loop 2009-04-23 14:24:03 +0200 oj r271171 : add dep 2009-04-23 13:25:25 +0200 oj r271164 : #i101268# add config entries for database drivers 2009-04-23 13:07:13 +0200 oj r271161 : #i101268# add config entries for database drivers 2009-04-23 13:06:33 +0200 oj r271160 : #i101268# add parent url pattern entry for driver node 2009-04-23 13:05:39 +0200 oj r271159 : #i101268# add config entry for driver node 2009-04-23 13:04:09 +0200 oj r271157 : #i101268# add config entry for driver node 2009-04-23 06:41:32 +0200 oj r271142 : #i101268# add new configuration file Drivers 2009-04-22 13:49:19 +0200 oj r271103 : convert EOL 2009-04-22 13:29:17 +0200 oj r271101 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:28:08 +0200 oj r271100 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:15:26 +0200 oj r271098 : #i101268# add new configuration file Drivers 2009-04-22 13:14:43 +0200 oj r271097 : #i101268# use of driver configuration entries for features and properties
2009-07-03 12:24:35 +00:00
OTableFields::iterator aEnd = rFields.end();
for(;aIter != aEnd;++aIter)
2001-02-05 08:26:47 +00:00
{
pEntry = *aIter;
2010-10-15 12:22:54 -05:00
OSL_ENSURE(pEntry.is(),"OTableFieldDescRef was null!");
2001-02-05 08:26:47 +00:00
const OUString aField = pEntry->GetField();
const OUString aAlias = pEntry->GetAlias();
2001-02-05 08:26:47 +00:00
if (bCase(aField,rInfo->GetField()) &&
bCase(aAlias,rInfo->GetAlias()) &&
CWS-TOOLING: integrate CWS dba31h 2009-01-29 10:47:07 +0100 oj r267102 : decl OpCodeMap as friend 2009-01-26 09:41:21 +0100 fs r266905 : #i97137# 2009-01-26 09:10:39 +0100 fs r266903 : #i10000 2009-01-26 09:00:17 +0100 fs r266901 : re-enable user admin for MySQL native 2009-01-23 21:56:08 +0100 fs r266851 : #i97137# 2009-01-23 21:32:40 +0100 fs r266850 : #i97042# 2009-01-23 11:23:59 +0100 msc r266800 : #i98387# 2009-01-23 11:17:05 +0100 msc r266798 : #i98387# 2009-01-23 10:56:33 +0100 fs r266795 : for the moment, disable user administration for MySQL native 2009-01-21 15:08:54 +0100 fs r266672 : removed some advanced settings for MySQL native - letting the user control them does not make sense for this particular type 2009-01-21 13:55:13 +0100 oj r266668 : #i98317# wrong var set 2009-01-21 13:41:22 +0100 fs r266664 : #i98315# 2009-01-21 13:13:09 +0100 oj r266661 : #i97032# enable locking for OOo 2009-01-21 13:11:26 +0100 oj r266660 : #i97032# enable locking for OOo 2009-01-21 10:10:50 +0100 oj r266634 : #i98174# merge conflict resolved 2009-01-21 08:48:58 +0100 fs r266628 : CWS-TOOLING: rebase CWS dba31h to trunk@266428 (milestone: DEV300:m39) 2009-01-20 12:54:32 +0100 fs r266570 : #i98277# 2009-01-19 10:46:31 +0100 fs r266480 : #i97995# 2009-01-19 08:42:09 +0100 fs r266470 : #i97042# provided my mod@openoffice.org: support more SQL comment styles 2009-01-19 07:55:43 +0100 oj r266468 : #i98115# check function name as well 2009-01-16 10:21:28 +0100 oj r266404 : #i97861# remove invalid assertion 2009-01-16 10:18:31 +0100 oj r266403 : #i97861# ini var with false 2009-01-15 14:09:50 +0100 oj r266371 : #i97810# saveas fix 2009-01-15 11:54:18 +0100 oj r266360 : remove : from mysql 2009-01-15 11:07:46 +0100 oj r266355 : insert JNI fixes for method names 2009-01-15 10:54:44 +0100 oj r266351 : fix for parameter subst 2009-01-14 14:41:34 +0100 oj r266308 : parameter subst 2009-01-14 14:40:20 +0100 oj r266307 : add missing try catch 2009-01-14 14:38:34 +0100 oj r266306 : new service for parameter subst 2009-01-14 14:37:52 +0100 oj r266305 : missing types for hyper 2009-01-09 15:28:36 +0100 fs r266090 : #i97889# 2009-01-09 14:16:15 +0100 fs r266082 : #i97892# provided by npower: when reading the xlink:href attrib, use the graphic resolver only if appropriate 2009-01-08 21:31:21 +0100 fs r266041 : #i97346# 2009-01-08 14:51:56 +0100 fs r266012 : #i97871# showPreviewFor: bail out if preview is disabled
2009-02-17 15:39:54 +00:00
pEntry->GetFunctionType() == rInfo->GetFunctionType() &&
pEntry->GetFunction() == rInfo->GetFunction())
2001-02-05 08:26:47 +00:00
{
if ( pEntry->isNumericOrAggreateFunction() && rInfo->IsGroupBy() )
{
pEntry->SetGroupBy(false);
aIter = rFields.end();
break;
}
else
2001-02-05 08:26:47 +00:00
{
if ( !pEntry->IsGroupBy() && !pEntry->HasCriteria() ) // here we have a where condition which is no having clause
{
pEntry->SetGroupBy(rInfo->IsGroupBy());
if(!m_bGroupByUnRelated && pEntry->IsGroupBy())
pEntry->SetVisible(true);
break;
}
2001-02-05 08:26:47 +00:00
}
2001-02-05 08:26:47 +00:00
}
}
if (aIter == rFields.end())
2001-02-05 08:26:47 +00:00
{
OTableFieldDescRef pTmp = InsertField(rInfo, BROWSER_INVALIDID, false, false );
if ( (pTmp->isNumericOrAggreateFunction() && rInfo->IsGroupBy()) ) // the GroupBy is inherited from rInfo
pTmp->SetGroupBy(false);
2001-02-05 08:26:47 +00:00
}
}
2009-11-11 14:07:55 +01:00
void OSelectionBrowseBox::DuplicateConditionLevel( const sal_uInt16 nLevel)
{
const sal_uInt16 nNewLevel = nLevel +1;
OTableFields& rFields = getFields();
OTableFields::iterator aIter = rFields.begin();
OTableFields::iterator aEnd = rFields.end();
for(;aIter != aEnd;++aIter)
{
OTableFieldDescRef pEntry = *aIter;
OUString sValue = pEntry->GetCriteria(nLevel);
if ( !sValue.isEmpty() )
2009-11-11 14:07:55 +01:00
{
pEntry->SetCriteria( nNewLevel, sValue);
if ( nNewLevel == (m_nVisibleCount-BROW_CRIT1_ROW-1) )
{
RowInserted( GetRowCount()-1, 1, true );
m_bVisibleRow.push_back(true);
2009-11-11 14:07:55 +01:00
++m_nVisibleCount;
}
m_bVisibleRow[BROW_CRIT1_ROW + nNewLevel] = true;
2010-11-25 01:16:20 +00:00
}
}
2009-11-11 14:07:55 +01:00
}
void OSelectionBrowseBox::AddCondition( const OTableFieldDescRef& rInfo, const OUString& rValue, const sal_uInt16 nLevel,bool _bAddOrOnOneLine )
2001-02-05 08:26:47 +00:00
{
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
2001-03-01 14:45:02 +00:00
if(!xConnection.is())
return;
2011-02-03 00:33:36 +01:00
OSL_ENSURE(rInfo.is() && !rInfo->IsEmpty(),"AddCondition:: OTableFieldDescRef sollte nicht Empty sein!");
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
OTableFieldDescRef pLastEntry;
Reference<XDatabaseMetaData> xMeta = xConnection->getMetaData();
::comphelper::UStringMixEqual bCase(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers());
2001-02-05 08:26:47 +00:00
CWS-TOOLING: integrate CWS dbaperf2 2009-06-22 11:04:36 +0200 msc r273202 : #100000# fix to run this test 2009-06-22 09:41:04 +0200 msc r273200 : #100000# correct case 2009-06-22 09:02:42 +0200 msc r273199 : new SRB 2009-06-22 08:53:26 +0200 msc r273198 : #100000 2009-06-15 12:36:32 +0200 oj r272976 : test 2009-06-12 14:23:23 +0200 msc r272918 : #101587# unused feature was removed 2009-06-12 06:45:17 +0200 oj r272903 : use GUI instead of OS 2009-06-11 09:12:30 +0200 oj r272845 : remove unused dep 2009-06-11 09:11:09 +0200 oj r272844 : ColumnAliasInOrderBy not supported 2009-06-11 08:27:00 +0200 oj r272843 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@272827 (milestone: DEV300:m50) 2009-06-10 15:30:17 +0200 msc r272822 : #100000 2009-06-10 15:27:40 +0200 msc r272820 : #102515# new function for the database type list 2009-06-10 15:26:09 +0200 msc r272818 : move file to dbaccess/tools/dbcreatetools.inc 2009-06-10 15:20:10 +0200 msc r272816 : #102515# new function for the database type list 2009-06-10 12:34:46 +0200 oj r272803 : #i101587# check extension 2009-06-10 11:53:45 +0200 oj r272800 : remove unused code 2009-06-09 09:57:25 +0200 oj r272752 : #i101587# EscapeDateTime moved into features section 2009-06-09 09:56:26 +0200 oj r272751 : enable finish 2009-06-08 11:50:37 +0200 oj r272726 : #i102588# move convert tzo saveDataSource 2009-06-05 11:54:20 +0200 jsk r272676 : #i102515# - NEW: Functions to retrieve Database names from API 2009-06-05 10:52:22 +0200 jsk r272671 : NEW: Functions to retrieve Database names from API 2009-06-05 09:36:54 +0200 oj r272666 : handle win and unx differently 2009-06-05 09:36:28 +0200 oj r272665 : handle win and unx differently 2009-06-04 13:41:56 +0200 oj r272625 : #i101268# make use of stringbuffer instead of oustring 2009-06-04 10:18:14 +0200 oj r272612 : add SAL_DLLPUBLIC_EXPORT 2009-05-28 10:56:33 +0200 oj r272381 : #i101587# create langpacks 2009-05-28 10:41:59 +0200 oj r272380 : #i101587# create langpacks 2009-05-28 10:29:30 +0200 oj r272379 : #i101587# create langpacks 2009-05-07 10:11:46 +0200 oj r271635 : fix compile warnings 2009-05-07 07:01:31 +0200 oj r271619 : change type from int32 to PathID 2009-05-07 06:53:19 +0200 oj r271618 : add all 2009-05-06 14:57:02 +0200 oj r271595 : add missing lib 2009-05-06 14:56:54 +0200 oj r271594 : no used anymore 2009-05-06 14:56:08 +0200 oj r271593 : no used anymore 2009-05-06 14:54:25 +0200 oj r271592 : no used anymore 2009-05-06 14:45:59 +0200 oj r271591 : add missing lib 2009-05-06 14:41:54 +0200 oj r271590 : change wnt 2009-05-06 14:22:21 +0200 oj r271589 : #i101587# use config for the drivers 2009-05-06 14:21:39 +0200 oj r271588 : #i101587# add new set for metadata and config data for driver 2009-05-06 14:19:36 +0200 oj r271587 : #i101587# handle metadata and props of driver 2009-05-06 10:11:11 +0200 oj r271570 : #i101587# correct wrong use of reference 2009-05-06 09:24:33 +0200 oj r271567 : #i101587# add new set for metadata 2009-05-06 08:52:06 +0200 oj r271563 : #i101587# add driver configuration 2009-05-06 08:51:04 +0200 oj r271562 : #i101587# add driver configuration 2009-05-04 10:24:41 +0200 oj r271442 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@271427 (milestone: DEV300:m47) 2009-04-28 07:06:22 +0200 oj r271303 : compile error 2009-04-27 14:12:48 +0200 oj r271270 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 14:12:27 +0200 oj r271269 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 09:30:10 +0200 oj r271255 : use string buffer when possible 2009-04-24 11:56:01 +0200 oj r271207 : #i101268# remove end() call from loop 2009-04-23 14:24:03 +0200 oj r271171 : add dep 2009-04-23 13:25:25 +0200 oj r271164 : #i101268# add config entries for database drivers 2009-04-23 13:07:13 +0200 oj r271161 : #i101268# add config entries for database drivers 2009-04-23 13:06:33 +0200 oj r271160 : #i101268# add parent url pattern entry for driver node 2009-04-23 13:05:39 +0200 oj r271159 : #i101268# add config entry for driver node 2009-04-23 13:04:09 +0200 oj r271157 : #i101268# add config entry for driver node 2009-04-23 06:41:32 +0200 oj r271142 : #i101268# add new configuration file Drivers 2009-04-22 13:49:19 +0200 oj r271103 : convert EOL 2009-04-22 13:29:17 +0200 oj r271101 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:28:08 +0200 oj r271100 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:15:26 +0200 oj r271098 : #i101268# add new configuration file Drivers 2009-04-22 13:14:43 +0200 oj r271097 : #i101268# use of driver configuration entries for features and properties
2009-07-03 12:24:35 +00:00
OTableFields& rFields = getFields();
OTableFields::iterator aIter = rFields.begin();
OTableFields::iterator aEnd = rFields.end();
for(;aIter != aEnd;++aIter)
2001-02-05 08:26:47 +00:00
{
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
OTableFieldDescRef pEntry = *aIter;
const OUString aField = pEntry->GetField();
const OUString aAlias = pEntry->GetAlias();
2001-02-05 08:26:47 +00:00
if (bCase(aField,rInfo->GetField()) &&
bCase(aAlias,rInfo->GetAlias()) &&
CWS-TOOLING: integrate CWS dba31h 2009-01-29 10:47:07 +0100 oj r267102 : decl OpCodeMap as friend 2009-01-26 09:41:21 +0100 fs r266905 : #i97137# 2009-01-26 09:10:39 +0100 fs r266903 : #i10000 2009-01-26 09:00:17 +0100 fs r266901 : re-enable user admin for MySQL native 2009-01-23 21:56:08 +0100 fs r266851 : #i97137# 2009-01-23 21:32:40 +0100 fs r266850 : #i97042# 2009-01-23 11:23:59 +0100 msc r266800 : #i98387# 2009-01-23 11:17:05 +0100 msc r266798 : #i98387# 2009-01-23 10:56:33 +0100 fs r266795 : for the moment, disable user administration for MySQL native 2009-01-21 15:08:54 +0100 fs r266672 : removed some advanced settings for MySQL native - letting the user control them does not make sense for this particular type 2009-01-21 13:55:13 +0100 oj r266668 : #i98317# wrong var set 2009-01-21 13:41:22 +0100 fs r266664 : #i98315# 2009-01-21 13:13:09 +0100 oj r266661 : #i97032# enable locking for OOo 2009-01-21 13:11:26 +0100 oj r266660 : #i97032# enable locking for OOo 2009-01-21 10:10:50 +0100 oj r266634 : #i98174# merge conflict resolved 2009-01-21 08:48:58 +0100 fs r266628 : CWS-TOOLING: rebase CWS dba31h to trunk@266428 (milestone: DEV300:m39) 2009-01-20 12:54:32 +0100 fs r266570 : #i98277# 2009-01-19 10:46:31 +0100 fs r266480 : #i97995# 2009-01-19 08:42:09 +0100 fs r266470 : #i97042# provided my mod@openoffice.org: support more SQL comment styles 2009-01-19 07:55:43 +0100 oj r266468 : #i98115# check function name as well 2009-01-16 10:21:28 +0100 oj r266404 : #i97861# remove invalid assertion 2009-01-16 10:18:31 +0100 oj r266403 : #i97861# ini var with false 2009-01-15 14:09:50 +0100 oj r266371 : #i97810# saveas fix 2009-01-15 11:54:18 +0100 oj r266360 : remove : from mysql 2009-01-15 11:07:46 +0100 oj r266355 : insert JNI fixes for method names 2009-01-15 10:54:44 +0100 oj r266351 : fix for parameter subst 2009-01-14 14:41:34 +0100 oj r266308 : parameter subst 2009-01-14 14:40:20 +0100 oj r266307 : add missing try catch 2009-01-14 14:38:34 +0100 oj r266306 : new service for parameter subst 2009-01-14 14:37:52 +0100 oj r266305 : missing types for hyper 2009-01-09 15:28:36 +0100 fs r266090 : #i97889# 2009-01-09 14:16:15 +0100 fs r266082 : #i97892# provided by npower: when reading the xlink:href attrib, use the graphic resolver only if appropriate 2009-01-08 21:31:21 +0100 fs r266041 : #i97346# 2009-01-08 14:51:56 +0100 fs r266012 : #i97871# showPreviewFor: bail out if preview is disabled
2009-02-17 15:39:54 +00:00
pEntry->GetFunctionType() == rInfo->GetFunctionType() &&
pEntry->GetFunction() == rInfo->GetFunction() &&
pEntry->IsGroupBy() == rInfo->IsGroupBy() )
2001-02-05 08:26:47 +00:00
{
if ( pEntry->isNumericOrAggreateFunction() && rInfo->IsGroupBy() )
pEntry->SetGroupBy(false);
2001-02-05 08:26:47 +00:00
else
{
if(!m_bGroupByUnRelated && pEntry->IsGroupBy())
pEntry->SetVisible(true);
2001-02-05 08:26:47 +00:00
}
if (pEntry->GetCriteria(nLevel).isEmpty() )
2001-02-05 08:26:47 +00:00
{
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
pEntry->SetCriteria( nLevel, rValue);
2001-02-05 08:26:47 +00:00
if(nLevel == (m_nVisibleCount-BROW_CRIT1_ROW-1))
{
RowInserted( GetRowCount()-1, 1, true );
m_bVisibleRow.push_back(true);
2001-02-05 08:26:47 +00:00
++m_nVisibleCount;
}
m_bVisibleRow[BROW_CRIT1_ROW + nLevel] = true;
2001-02-05 08:26:47 +00:00
break;
2010-11-25 01:16:20 +00:00
}
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
if ( _bAddOrOnOneLine )
{
pLastEntry = pEntry;
2001-02-05 08:26:47 +00:00
}
}
2010-11-25 01:16:20 +00:00
}
2010-10-15 12:22:54 -05:00
if ( pLastEntry.is() )
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
{
OUString sCriteria = rValue;
OUString sOldCriteria = pLastEntry->GetCriteria( nLevel );
if ( !sOldCriteria.isEmpty() )
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
{
sCriteria = "( ";
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
sCriteria += sOldCriteria;
sCriteria += " OR ";
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
sCriteria += rValue;
sCriteria += " )";
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
}
pLastEntry->SetCriteria( nLevel, sCriteria);
if(nLevel == (m_nVisibleCount-BROW_CRIT1_ROW-1))
{
RowInserted( GetRowCount()-1, 1, true );
m_bVisibleRow.push_back(true);
CWS-TOOLING: integrate CWS dba32c 2009-06-29 20:53:25 +0200 fs r273484 : #i103138# Rectangle conversion 2009-06-29 20:51:50 +0200 fs r273483 : #i103138# yet more refactoring, now also setting the proper zoom level at the proper point in time 2009-06-29 13:40:26 +0200 fs r273470 : added svn:ignore to ignore output paths 2009-06-29 10:08:54 +0200 fs r273455 : #i103138# refactored the code for positioning/zooming the control Basically, we now allow adjustControlGeometry_throw (formerly known as positionControl_throw and setControlZoom) to take an additional ViewTransformation parameter, describing the transformation to obtain the actual control position/size. Consequently, positionControl itself also allows for a ViewTransformation parameter. This has become necessary since during painting, the device which we created our control for might not necessarily have a proper MapMode set. In this case, if we would use this map mode for calculating the control's position/size, this would lead to wrong results. Note that this problem was introduced by the fix for #i101398#: During the fix, we postponed the control creation to a later time (when it is really needed). At this later time, the MapMode at the device is broken, at the earlier time where we formerly crearted the control (createPrimitive2DSequence), it is not yet broken. Whether or not the MapMode is defined as "broken" might depend on one's point of view, however ... I consider it broken, since: - we need the map mode to obtain the proper zoom level, which is to be forwarded to the control - there are scenarios where the MapMode is *not* set to MAP_PIXEL (in those scenarios, everything works fine), and there are scenarios where it *is* set to MAP_PIXEL (in those the bug 103138 appears). It somehow feels wrong that one cannot rely on the device's map mode this way, but on the other hand one has no possibility to obtain the current zoom by other means. Note that one issue (still to be submitted) is left: In the page pane of a Draw/Impress document, controls have a wrong text size. This is because in this pane, the above-mentioned "broken" map mode is used, which means the controls have a zoom of "1:1" set, which is wrong here. 2009-06-25 13:41:35 +0200 msc r273380 : #100000# the tabs changed die to new properties 2009-06-24 12:42:40 +0200 msc r273330 : #102082# remove issue warning 2009-06-22 10:43:14 +0200 fs r273201 : createPrimitive2DSequence: care for being disposed 2009-06-18 12:35:13 +0200 oj r273109 : #i102305# make nooptfiles for gcc 2009-06-17 12:14:37 +0200 oj r273056 : #i102305# fix for linux 2009-06-17 07:20:22 +0200 oj r273046 : #i102305# move ValueTransfer into the for loop to avoid a crash under Linux 2009-06-17 07:17:28 +0200 oj r273045 : #i102305# use varchar 2009-06-15 14:11:27 +0200 fs r272983 : added since tag 2009-06-15 12:11:39 +0200 oj r272973 : #i102305# SAL_DLLPUBLIC_EXPORT inserted 2009-06-15 11:08:53 +0200 fs r272969 : #i10000# 2009-06-15 09:25:13 +0200 fs r272963 : merging fix for P1 issue #i102701# 2009-06-11 11:31:24 +0200 fs r272858 : #i10000# copied the fix which before the rebase was done in ../dialog/macropg.src 2009-06-11 09:38:14 +0200 fs r272846 : CWS-TOOLING: rebase CWS dba32c to trunk@272827 (milestone: DEV300:m50) 2009-06-02 09:53:10 +0200 fs r272483 : #i10000# 2009-05-29 15:55:03 +0200 fs r272465 : #i100818# 2009-05-29 12:58:43 +0200 fs r272452 : don't apply comphelper::getString on possibly VOID any 2009-05-29 10:38:35 +0200 oj r272437 : #i101519# handle where condition 2009-05-29 09:53:39 +0200 fs r272434 : #i100818# call into releaseStubs /without/ locked GlobalMutex 2009-05-28 07:53:44 +0200 oj r272375 : #i101369# parse tree changed 2009-05-27 14:53:36 +0200 fs r272347 : #i10000# 2009-05-27 09:29:15 +0200 oj r272327 : #i101626# check for double before hard cast 2009-05-27 09:13:58 +0200 oj r272326 : #i101626# handle void correctly 2009-05-27 08:04:39 +0200 oj r272321 : #i102256# wrong method signature used 2009-05-27 07:55:52 +0200 oj r272320 : #i101519# look up parameter typ if used in function 2009-05-27 06:49:07 +0200 oj r272319 : #i101519# set parameter from rowset as well 2009-05-26 13:30:56 +0200 oj r272297 : #i101987# impl XBatchExecution 2009-05-26 12:44:34 +0200 oj r272293 : #i101700# check if group is not set 2009-05-26 12:16:53 +0200 oj r272290 : #i101369# resolved some reduce7reduce problems with boolean_term and search_condition 2009-05-26 12:12:42 +0200 oj r272289 : #i101369# fix for or on one line criteria 2009-05-25 16:02:25 +0200 fs r272257 : #i999704# +PROPERTY_MOUSE_WHEEL_BEHAVIOR 2009-05-25 16:01:55 +0200 fs r272256 : merging the changes from CWS dba32b herein 2009-05-25 15:49:57 +0200 fs r272254 : #i999704# 2009-05-25 15:32:57 +0200 fs r272252 : #i99704# grid columns also to respect the MouseWheelBehavior property 2009-05-25 15:23:43 +0200 fs r272251 : don't pass empty Anys to ::comphelper::getString 2009-05-25 14:48:43 +0200 fs r272248 : merged changes from CWS dba32b herein 2009-05-25 14:44:40 +0200 fs r272247 : #i99704# support new MouseWheelBehavior property 2009-05-25 14:43:18 +0200 fs r272246 : #i99704# WheelWithoutFocus (peer property) superseded by MouseWheelBehavior (model property) 2009-05-25 14:41:03 +0200 fs r272245 : #i99704# no need to set the mouse wheel behavior at the peer, this is now a model property, having the right default 2009-05-25 14:39:31 +0200 fs r272243 : removed dead import 2009-05-25 14:35:36 +0200 fs r272242 : the new EnableVisible doesn't make sense for grid columns 2009-05-25 14:34:33 +0200 fs r272241 : #i99704# +MouseWheelBehavior - allow to enable/disable the mouse wheel for the control, or make it focus-dependent 2009-05-25 14:26:11 +0200 fs r272240 : #i99704# change MouseSettings wheel flag (NoWheelActionWithoutFocus) to a three-state option, allowing to completely ignore the mouse wheel 2009-05-23 21:35:59 +0200 fs r272213 : localize 'sub component opened/closed' event 2009-05-22 21:42:47 +0200 fs r272211 : #i102003# 2009-05-22 21:42:20 +0200 fs r272210 : grammar 2009-05-22 21:36:10 +0200 fs r272209 : #i102140# load only once, not twice, and show error messages during loading (and during any form action, that is) asynchronously 2009-05-22 21:35:11 +0200 fs r272208 : #i102140# +clear 2009-05-22 14:50:30 +0200 fs r272194 : #i102139# for newly created DB docs, set the MacroExecutionMode to USE_CONFIG 2009-05-22 12:03:42 +0200 fs r272180 : #i88878# provided by noel.power@novell.com implement a visibility property (EnableVisible) for toolkit controls, and usage in forms and UNO dialogs 2009-05-15 15:37:31 +0200 fs r271942 : #i100671# corrected some @since tags, so autodoc has better chances of correctly reading them 2009-05-15 15:33:11 +0200 fs r271940 : don't call comphelper::getFOO for VOID values 2009-05-15 15:08:31 +0200 fs r271937 : includes 2009-05-15 13:39:22 +0200 fs r271934 : #i101398# createPrimitive2DSequence: when we already have a control, use the old code. In particular, call positionControlForPaint 2009-05-15 12:33:48 +0200 fs r271933 : make the geometry a part of the ControlPrimitive2D's identity 2009-05-15 10:15:44 +0200 fs r271928 : #i10000# 2009-05-14 20:55:38 +0200 fs r271921 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:55:31 +0200 fs r271920 : #i101398# don't reuse the name PRIMITIVE_ID_CONTROLPRIMITIVE2D, make the name of our own ControlPrimitive2D unique 2009-05-14 20:23:23 +0200 fs r271919 : #i101622# 2009-05-14 16:04:38 +0200 fs r271898 : don't use comphelper::getInt32 on voids 2009-05-14 16:04:12 +0200 fs r271897 : merge fix for issue whose number just slipped my memory ... (originally fixed in CWS dba32b) 2009-05-14 15:36:55 +0200 fs r271895 : merging changes from DEV300:m48 2009-05-07 14:43:19 +0200 fs r271670 : #i101477# 2009-05-07 14:37:30 +0200 fs r271668 : #i101477# 2009-05-07 09:27:30 +0200 oj r271628 : #i101343# remove pch 2009-05-06 09:36:02 +0200 fs r271568 : getFoo: diagnostics 2009-05-04 09:23:06 +0200 oj r271438 : CWS-TOOLING: rebase CWS dba32c to trunk@271427 (milestone: DEV300:m47) 2009-04-29 23:18:13 +0200 fs r271394 : #i101398# use a dedicated 2DPrimitive for UNO Controls, which is able to provide the B2DRange *without* actually creating the control 2009-04-29 13:52:25 +0200 fs r271366 : #i101308#
2009-07-03 14:21:50 +00:00
++m_nVisibleCount;
}
m_bVisibleRow[BROW_CRIT1_ROW + nLevel] = true;
2001-02-05 08:26:47 +00:00
}
else if (aIter == rFields.end())
2001-02-05 08:26:47 +00:00
{
OTableFieldDescRef pTmp = InsertField(rInfo, BROWSER_INVALIDID, false, false );
if ( pTmp->isNumericOrAggreateFunction() && rInfo->IsGroupBy() ) // the GroupBy was inherited from rInfo
pTmp->SetGroupBy(false);
2010-10-15 12:22:54 -05:00
if ( pTmp.is() )
2001-02-05 08:26:47 +00:00
{
pTmp->SetCriteria( nLevel, rValue);
if(nLevel == (m_nVisibleCount-BROW_CRIT1_ROW-1))
{
RowInserted( GetRowCount()-1, 1, true );
m_bVisibleRow.push_back(true);
2001-02-05 08:26:47 +00:00
++m_nVisibleCount;
}
}
}
}
void OSelectionBrowseBox::AddOrder( const OTableFieldDescRef& rInfo, const EOrderDir eDir, sal_uInt32 _nCurrentPos)
2001-02-05 08:26:47 +00:00
{
if (_nCurrentPos == 0)
m_nLastSortColumn = SORT_COLUMN_NONE;
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
2001-03-01 14:45:02 +00:00
if(!xConnection.is())
return;
OSL_ENSURE(!rInfo->IsEmpty(),"AddOrder:: OTableFieldDescRef should not be Empty!");
OTableFieldDescRef pEntry;
Reference<XDatabaseMetaData> xMeta = xConnection->getMetaData();
::comphelper::UStringMixEqual bCase(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers());
2001-02-05 08:26:47 +00:00
bool bAppend = false;
OTableFields& rFields = getFields();
OTableFields::iterator aIter = rFields.begin();
CWS-TOOLING: integrate CWS dbaperf2 2009-06-22 11:04:36 +0200 msc r273202 : #100000# fix to run this test 2009-06-22 09:41:04 +0200 msc r273200 : #100000# correct case 2009-06-22 09:02:42 +0200 msc r273199 : new SRB 2009-06-22 08:53:26 +0200 msc r273198 : #100000 2009-06-15 12:36:32 +0200 oj r272976 : test 2009-06-12 14:23:23 +0200 msc r272918 : #101587# unused feature was removed 2009-06-12 06:45:17 +0200 oj r272903 : use GUI instead of OS 2009-06-11 09:12:30 +0200 oj r272845 : remove unused dep 2009-06-11 09:11:09 +0200 oj r272844 : ColumnAliasInOrderBy not supported 2009-06-11 08:27:00 +0200 oj r272843 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@272827 (milestone: DEV300:m50) 2009-06-10 15:30:17 +0200 msc r272822 : #100000 2009-06-10 15:27:40 +0200 msc r272820 : #102515# new function for the database type list 2009-06-10 15:26:09 +0200 msc r272818 : move file to dbaccess/tools/dbcreatetools.inc 2009-06-10 15:20:10 +0200 msc r272816 : #102515# new function for the database type list 2009-06-10 12:34:46 +0200 oj r272803 : #i101587# check extension 2009-06-10 11:53:45 +0200 oj r272800 : remove unused code 2009-06-09 09:57:25 +0200 oj r272752 : #i101587# EscapeDateTime moved into features section 2009-06-09 09:56:26 +0200 oj r272751 : enable finish 2009-06-08 11:50:37 +0200 oj r272726 : #i102588# move convert tzo saveDataSource 2009-06-05 11:54:20 +0200 jsk r272676 : #i102515# - NEW: Functions to retrieve Database names from API 2009-06-05 10:52:22 +0200 jsk r272671 : NEW: Functions to retrieve Database names from API 2009-06-05 09:36:54 +0200 oj r272666 : handle win and unx differently 2009-06-05 09:36:28 +0200 oj r272665 : handle win and unx differently 2009-06-04 13:41:56 +0200 oj r272625 : #i101268# make use of stringbuffer instead of oustring 2009-06-04 10:18:14 +0200 oj r272612 : add SAL_DLLPUBLIC_EXPORT 2009-05-28 10:56:33 +0200 oj r272381 : #i101587# create langpacks 2009-05-28 10:41:59 +0200 oj r272380 : #i101587# create langpacks 2009-05-28 10:29:30 +0200 oj r272379 : #i101587# create langpacks 2009-05-07 10:11:46 +0200 oj r271635 : fix compile warnings 2009-05-07 07:01:31 +0200 oj r271619 : change type from int32 to PathID 2009-05-07 06:53:19 +0200 oj r271618 : add all 2009-05-06 14:57:02 +0200 oj r271595 : add missing lib 2009-05-06 14:56:54 +0200 oj r271594 : no used anymore 2009-05-06 14:56:08 +0200 oj r271593 : no used anymore 2009-05-06 14:54:25 +0200 oj r271592 : no used anymore 2009-05-06 14:45:59 +0200 oj r271591 : add missing lib 2009-05-06 14:41:54 +0200 oj r271590 : change wnt 2009-05-06 14:22:21 +0200 oj r271589 : #i101587# use config for the drivers 2009-05-06 14:21:39 +0200 oj r271588 : #i101587# add new set for metadata and config data for driver 2009-05-06 14:19:36 +0200 oj r271587 : #i101587# handle metadata and props of driver 2009-05-06 10:11:11 +0200 oj r271570 : #i101587# correct wrong use of reference 2009-05-06 09:24:33 +0200 oj r271567 : #i101587# add new set for metadata 2009-05-06 08:52:06 +0200 oj r271563 : #i101587# add driver configuration 2009-05-06 08:51:04 +0200 oj r271562 : #i101587# add driver configuration 2009-05-04 10:24:41 +0200 oj r271442 : CWS-TOOLING: rebase CWS dbaperf2 to trunk@271427 (milestone: DEV300:m47) 2009-04-28 07:06:22 +0200 oj r271303 : compile error 2009-04-27 14:12:48 +0200 oj r271270 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 14:12:27 +0200 oj r271269 : #i101268# make use of stringbuffer instead of oustring 2009-04-27 09:30:10 +0200 oj r271255 : use string buffer when possible 2009-04-24 11:56:01 +0200 oj r271207 : #i101268# remove end() call from loop 2009-04-23 14:24:03 +0200 oj r271171 : add dep 2009-04-23 13:25:25 +0200 oj r271164 : #i101268# add config entries for database drivers 2009-04-23 13:07:13 +0200 oj r271161 : #i101268# add config entries for database drivers 2009-04-23 13:06:33 +0200 oj r271160 : #i101268# add parent url pattern entry for driver node 2009-04-23 13:05:39 +0200 oj r271159 : #i101268# add config entry for driver node 2009-04-23 13:04:09 +0200 oj r271157 : #i101268# add config entry for driver node 2009-04-23 06:41:32 +0200 oj r271142 : #i101268# add new configuration file Drivers 2009-04-22 13:49:19 +0200 oj r271103 : convert EOL 2009-04-22 13:29:17 +0200 oj r271101 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:28:08 +0200 oj r271100 : #i101268# use of driver configuration entries for features and properties 2009-04-22 13:15:26 +0200 oj r271098 : #i101268# add new configuration file Drivers 2009-04-22 13:14:43 +0200 oj r271097 : #i101268# use of driver configuration entries for features and properties
2009-07-03 12:24:35 +00:00
OTableFields::iterator aEnd = rFields.end();
for(;aIter != aEnd;++aIter)
2001-02-05 08:26:47 +00:00
{
pEntry = *aIter;
OUString aField = pEntry->GetField();
OUString aAlias = pEntry->GetAlias();
2001-02-05 08:26:47 +00:00
if (bCase(aField,rInfo->GetField()) &&
bCase(aAlias,rInfo->GetAlias()))
2001-02-05 08:26:47 +00:00
{
sal_uInt32 nPos = aIter - rFields.begin();
bAppend = (m_nLastSortColumn != SORT_COLUMN_NONE) && (nPos <= m_nLastSortColumn);
if ( bAppend )
aIter = rFields.end();
else
{
if ( !m_bOrderByUnRelated )
pEntry->SetVisible(true);
pEntry->SetOrderDir( eDir );
m_nLastSortColumn = nPos;
}
2001-02-05 08:26:47 +00:00
break;
}
}
if (aIter == rFields.end())
2001-02-05 08:26:47 +00:00
{
OTableFieldDescRef pTmp = InsertField(rInfo, BROWSER_INVALIDID, false, false );
2010-10-15 12:22:54 -05:00
if(pTmp.is())
2001-02-05 08:26:47 +00:00
{
m_nLastSortColumn = pTmp->GetColumnId() - 1;
if ( !m_bOrderByUnRelated && !bAppend )
pTmp->SetVisible(true);
2001-02-05 08:26:47 +00:00
pTmp->SetOrderDir( eDir );
}
}
}
void OSelectionBrowseBox::ArrangeControls(sal_uInt16& nX, sal_uInt16 nY)
{
EditBrowseBox::ArrangeControls(nX, nY);
2001-02-05 08:26:47 +00:00
}
bool OSelectionBrowseBox::Save()
2001-02-05 08:26:47 +00:00
{
bool bRet = true;
2001-02-05 08:26:47 +00:00
if (IsModified())
2001-09-27 05:19:05 +00:00
bRet = SaveModified();
return bRet;
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::CellModified()
{
long nRow = GetRealRow(GetCurRow());
switch (nRow)
{
case BROW_VIS_ROW:
{
OTableFieldDescRef pEntry = getEntry(GetColumnPos(GetCurColumnId()) - 1);
sal_Int32 nIdx = m_pOrderCell->GetSelectEntryPos();
if(!m_bOrderByUnRelated && nIdx > 0 &&
nIdx != LISTBOX_ENTRY_NOTFOUND &&
!pEntry->IsEmpty() &&
pEntry->GetOrderDir() != ORDER_NONE)
2001-02-05 08:26:47 +00:00
{
m_pVisibleCell->GetBox().Check();
pEntry->SetVisible(true);
2001-02-05 08:26:47 +00:00
}
else
pEntry->SetVisible(m_pVisibleCell->GetBox().IsChecked());
}
break;
}
static_cast<OQueryController&>(getDesignView()->getController()).setModified( sal_True );
2001-02-05 08:26:47 +00:00
}
void OSelectionBrowseBox::Fill()
{
2011-02-03 00:33:36 +01:00
OSL_ENSURE(ColCount() >= 1, "OSelectionBrowseBox::Fill : please call only after inserting the handle column !");
2001-02-05 08:26:47 +00:00
sal_uInt16 nColCount = ColCount() - 1;
if (nColCount < DEFAULT_QUERY_COLS)
AppendNewCol(DEFAULT_QUERY_COLS - nColCount);
}
Size OSelectionBrowseBox::CalcOptimalSize( const Size& _rAvailable )
{
Size aReturn( _rAvailable.Width(), GetTitleHeight() );
aReturn.Height() += ( m_nVisibleCount ? m_nVisibleCount : 15 ) * GetDataRowHeight();
aReturn.Height() += 40; // just some space
return aReturn;
}
2001-02-05 08:26:47 +00:00
void OSelectionBrowseBox::Command(const CommandEvent& rEvt)
{
switch (rEvt.GetCommand())
{
case COMMAND_CONTEXTMENU:
{
Point aMenuPos( rEvt.GetMousePosPixel() );
2001-02-05 08:26:47 +00:00
if (!rEvt.IsMouseEvent())
{
if ( 1 == GetSelectColumnCount() )
{
sal_uInt16 nSelId = GetColumnId(
sal::static_int_cast< sal_uInt16 >(
FirstSelectedColumn() ) );
::Rectangle aColRect( GetFieldRectPixel( 0, nSelId, false ) );
aMenuPos = aColRect.TopCenter();
}
else
{
EditBrowseBox::Command(rEvt);
return;
}
2001-02-05 08:26:47 +00:00
}
2002-08-19 07:01:32 +00:00
sal_uInt16 nColId = GetColumnId(GetColumnAtXPosPixel( aMenuPos.X() ));
long nRow = GetRowAtYPosPixel( aMenuPos.Y() );
2001-02-05 08:26:47 +00:00
if (nRow < 0 && nColId > HANDLE_ID )
2001-02-05 08:26:47 +00:00
{
if ( !IsColumnSelected( nColId ) )
{
adjustSelectionMode( true /* clicked onto a header */ , false /* not onto the handle col */ );
SelectColumnId( nColId );
}
if (!static_cast<OQueryController&>(getDesignView()->getController()).isReadOnly())
2001-02-05 08:26:47 +00:00
{
PopupMenu aContextMenu( ModuleRes( RID_QUERYCOLPOPUPMENU ) );
switch (aContextMenu.Execute(this, aMenuPos))
2001-02-05 08:26:47 +00:00
{
case SID_DELETE:
2001-02-05 08:26:47 +00:00
RemoveField(nColId);
break;
case ID_BROWSER_COLWIDTH:
adjustBrowseBoxColumnWidth( this, nColId );
break;
2001-02-05 08:26:47 +00:00
}
}
}
else if(nRow >= 0 && nColId <= HANDLE_ID)
{
if (!static_cast<OQueryController&>(getDesignView()->getController()).isReadOnly())
2001-02-05 08:26:47 +00:00
{
PopupMenu aContextMenu(ModuleRes(RID_QUERYFUNCTION_POPUPMENU));
aContextMenu.CheckItem( ID_QUERY_FUNCTION, m_bVisibleRow[BROW_FUNCTION_ROW]);
aContextMenu.CheckItem( ID_QUERY_TABLENAME, m_bVisibleRow[BROW_TABLE_ROW]);
aContextMenu.CheckItem( ID_QUERY_ALIASNAME, m_bVisibleRow[BROW_COLUMNALIAS_ROW]);
aContextMenu.CheckItem( ID_QUERY_DISTINCT, static_cast<OQueryController&>(getDesignView()->getController()).isDistinct());
2001-02-05 08:26:47 +00:00
switch (aContextMenu.Execute(this, aMenuPos))
2001-02-05 08:26:47 +00:00
{
case ID_QUERY_FUNCTION:
SetRowVisible(BROW_FUNCTION_ROW, !IsRowVisible(BROW_FUNCTION_ROW));
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature( SID_QUERY_VIEW_FUNCTIONS );
2001-02-05 08:26:47 +00:00
break;
case ID_QUERY_TABLENAME:
SetRowVisible(BROW_TABLE_ROW, !IsRowVisible(BROW_TABLE_ROW));
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature( SID_QUERY_VIEW_TABLES );
2001-02-05 08:26:47 +00:00
break;
case ID_QUERY_ALIASNAME:
SetRowVisible(BROW_COLUMNALIAS_ROW, !IsRowVisible(BROW_COLUMNALIAS_ROW));
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature( SID_QUERY_VIEW_ALIASES );
2001-02-05 08:26:47 +00:00
break;
case ID_QUERY_DISTINCT:
static_cast<OQueryController&>(getDesignView()->getController()).setDistinct(!static_cast<OQueryController&>(getDesignView()->getController()).isDistinct());
static_cast<OQueryController&>(getDesignView()->getController()).setModified( sal_True );
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature( SID_QUERY_DISTINCT_VALUES );
2001-02-05 08:26:47 +00:00
break;
}
static_cast<OQueryController&>(getDesignView()->getController()).setModified( sal_True );
2001-02-05 08:26:47 +00:00
}
}
else
{
EditBrowseBox::Command(rEvt);
2001-02-05 08:26:47 +00:00
return;
}
}
//fall-through
2001-02-05 08:26:47 +00:00
default:
EditBrowseBox::Command(rEvt);
2001-02-05 08:26:47 +00:00
}
}
bool OSelectionBrowseBox::IsRowVisible(sal_uInt16 _nWhich) const
2001-02-05 08:26:47 +00:00
{
2011-02-03 00:33:36 +01:00
OSL_ENSURE(_nWhich<(m_bVisibleRow.size()), "OSelectionBrowseBox::IsRowVisible : invalid parameter !");
2001-02-05 08:26:47 +00:00
return m_bVisibleRow[_nWhich];
}
void OSelectionBrowseBox::SetRowVisible(sal_uInt16 _nWhich, bool _bVis)
2001-02-05 08:26:47 +00:00
{
2011-02-03 00:33:36 +01:00
OSL_ENSURE(_nWhich<m_bVisibleRow.size(), "OSelectionBrowseBox::SetRowVisible : invalid parameter !");
2001-02-05 08:26:47 +00:00
bool bWasEditing = IsEditing();
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
DeactivateCell();
// do this before removing or inserting rows, as this triggers ActivateCell-calls, which rely on m_bVisibleRow
m_bVisibleRow[_nWhich] = !m_bVisibleRow[_nWhich];
long nId = GetBrowseRow(_nWhich);
if (_bVis)
{
RowInserted(nId,1);
2001-10-23 11:30:27 +00:00
++m_nVisibleCount;
2001-02-05 08:26:47 +00:00
}
else
{
RowRemoved(nId,1);
2001-10-23 11:30:27 +00:00
--m_nVisibleCount;
2001-02-05 08:26:47 +00:00
}
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
ActivateCell();
}
long OSelectionBrowseBox::GetBrowseRow(long nRowId) const
{
sal_uInt16 nCount(0);
for(sal_uInt16 i = 0 ; i < nRowId ; ++i)
2001-02-05 08:26:47 +00:00
{
2002-08-19 07:01:32 +00:00
if ( m_bVisibleRow[i] )
++nCount;
2001-02-05 08:26:47 +00:00
}
return nCount;
}
2001-02-05 08:26:47 +00:00
long OSelectionBrowseBox::GetRealRow(long nRowId) const
{
long nErg=0,i;
const long nCount = m_bVisibleRow.size();
2002-08-19 07:01:32 +00:00
for(i=0;i < nCount; ++i)
2001-02-05 08:26:47 +00:00
{
if(m_bVisibleRow[i])
{
if(nErg++ == nRowId)
break;
}
}
2011-02-03 00:33:36 +01:00
OSL_ENSURE(nErg <= long(m_bVisibleRow.size()),"nErg kann nicht groesser als BROW_ROW_CNT sein!");
2001-02-05 08:26:47 +00:00
return i;
}
static const long nVisibleRowMask[] =
2001-02-05 08:26:47 +00:00
{
0x0001,
0x0002,
0x0004,
0x0008,
0x0010,
0x0020,
0x0040,
0x0080,
0x0100,
0x0200,
0x0400,
0x0800
};
sal_Int32 OSelectionBrowseBox::GetNoneVisibleRows() const
{
sal_Int32 nErg(0);
2001-10-23 11:30:27 +00:00
// only the first 11 row are interesting
sal_Int32 nSize = sizeof(nVisibleRowMask) / sizeof(nVisibleRowMask[0]);
2001-02-05 08:26:47 +00:00
for(sal_Int32 i=0;i<nSize;i++)
{
if(!m_bVisibleRow[i])
nErg |= nVisibleRowMask[i];
}
return nErg;
}
2001-02-05 08:26:47 +00:00
void OSelectionBrowseBox::SetNoneVisbleRow(long nRows)
{
2001-10-23 11:30:27 +00:00
// only the first 11 row are interesting
sal_Int32 nSize = sizeof(nVisibleRowMask) / sizeof(nVisibleRowMask[0]);
2001-02-05 08:26:47 +00:00
for(sal_Int32 i=0;i< nSize;i++)
m_bVisibleRow[i] = !(nRows & nVisibleRowMask[i]);
}
OUString OSelectionBrowseBox::GetCellText(long nRow, sal_uInt16 nColId) const
2001-02-05 08:26:47 +00:00
{
2002-08-19 07:01:32 +00:00
sal_uInt16 nPos = GetColumnPos(nColId);
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEntry = getFields()[nPos-1];
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry != NULL, "OSelectionBrowseBox::GetCellText : invalid column id, prepare for GPF ... ");
if ( pEntry->IsEmpty() )
return OUString();
2001-02-05 08:26:47 +00:00
OUString aText;
2001-02-05 08:26:47 +00:00
switch (nRow)
{
case BROW_TABLE_ROW:
aText = pEntry->GetAlias();
break;
case BROW_FIELD_ROW:
{
OUString aField = pEntry->GetField();
if (!aField.isEmpty() && aField[0] == '*') // * durch alias.* ersetzen
2001-02-05 08:26:47 +00:00
{
aField = pEntry->GetAlias();
if(!aField.isEmpty())
aField += ".";
aField += "*";
2001-02-05 08:26:47 +00:00
}
aText = aField;
} break;
case BROW_ORDER_ROW:
if (pEntry->GetOrderDir() != ORDER_NONE)
aText = OUString(ModuleRes(STR_QUERY_SORTTEXT)).getToken(sal::static_int_cast< sal_uInt16 >(pEntry->GetOrderDir()), ';');
2001-02-05 08:26:47 +00:00
break;
case BROW_VIS_ROW:
break;
case BROW_COLUMNALIAS_ROW:
aText = pEntry->GetFieldAlias();
break;
case BROW_FUNCTION_ROW:
// we always show the group function at first
if ( pEntry->IsGroupBy() )
aText = m_aFunctionStrings.getToken(comphelper::string::getTokenCount(m_aFunctionStrings, ';')-1, ';');
else if ( pEntry->isNumericOrAggreateFunction() )
aText = pEntry->GetFunction();
2001-02-05 08:26:47 +00:00
break;
default:
aText = pEntry->GetCriteria(sal_uInt16(nRow - BROW_CRIT1_ROW));
2001-02-05 08:26:47 +00:00
}
return aText;
}
bool OSelectionBrowseBox::GetFunctionName(sal_uInt32 _nFunctionTokenId, OUString& rFkt)
2001-02-05 08:26:47 +00:00
{
bool bErg=true;
switch(_nFunctionTokenId)
2001-02-05 08:26:47 +00:00
{
case SQL_TOKEN_COUNT:
rFkt = (m_pFunctionCell->GetEntryCount() < 3) ? m_pFunctionCell->GetEntry(1) : m_pFunctionCell->GetEntry(2);
break;
case SQL_TOKEN_AVG:
rFkt = m_pFunctionCell->GetEntry(1);
break;
case SQL_TOKEN_MAX:
rFkt = m_pFunctionCell->GetEntry(3);
break;
case SQL_TOKEN_MIN:
rFkt = m_pFunctionCell->GetEntry(4);
break;
case SQL_TOKEN_SUM:
rFkt = m_pFunctionCell->GetEntry(5);
break;
CWS-TOOLING: integrate CWS dba31e 2008-11-19 12:36:23 +0100 msc r263980 : i96104 2008-11-19 12:31:19 +0100 msc r263979 : i96104 2008-11-19 12:21:55 +0100 msc r263977 : i96104 2008-11-19 12:18:53 +0100 msc r263976 : i96104 2008-11-18 09:09:45 +0100 oj r263746 : disable color entry when area is set 2008-11-18 08:37:52 +0100 oj r263741 : #remove sub report entry 2008-11-17 11:20:25 +0100 fs r263708 : #i10000# 2008-11-17 11:06:52 +0100 fs r263706 : minimal version now is 3.1 2008-11-12 22:25:59 +0100 fs r263621 : #i96150# 2008-11-12 22:20:02 +0100 fs r263620 : rebased to m34 2008-11-12 21:39:41 +0100 fs r263618 : MANUAL REBASE: rebase CWS dba31d to DEV300_m34 2008-11-12 13:54:58 +0100 fs r263597 : #i96134# MediaDescriptor.URL is to be preferred over MediaDescriptor.FileName. Nonetheless, ensure both are handled 2008-11-12 13:53:40 +0100 fs r263596 : #i96134# re-enabled the code for #i41897#, a better fix is to come 2008-11-12 12:48:21 +0100 fs r263585 : #i96134# disable saving URLs of file-base databases relatively 2008-11-11 16:11:11 +0100 msc r263566 : #i96104# 2008-11-05 09:09:47 +0100 oj r263342 : #i88727# color noe added 2008-11-05 08:41:43 +0100 oj r263341 : #i77916# zoom added 2008-11-04 21:24:15 +0100 fs r263339 : disposing: call disposeAndClear without own mutex locked - some of our listeners insist on locking the SolarMutex, which sometimes led to deadlocks on the complex test cases 2008-11-04 21:23:15 +0100 fs r263338 : remove SolarMutex locking - this happned in CWS dba31c (in the CVS version), which this CWS was created from, but seems to got lost during resync 2008-11-04 20:49:50 +0100 fs r263335 : docu formatting 2008-11-04 20:06:39 +0100 fs r263334 : #i95826# use m_aMutex, not a DocumentGuard (wrongly resolved merge conflicts) 2008-11-04 17:36:29 +0100 fs r263332 : #i92688# properly revoke as XEventListener from m_xActiveController when disposing 2008-11-04 14:49:34 +0100 fs r263324 : #i92322# enable Input Required if EmptyIsNULL does not exist at the control 2008-10-31 11:10:04 +0100 oj r262857 : merge from cvs to svn 2008-10-31 09:46:45 +0100 oj r262853 : merge from cvs to svn 2008-10-31 08:46:37 +0100 oj r262849 : merge from cvs to svn 2008-10-31 08:44:24 +0100 oj r262848 : merge from cvs to svn 2008-10-31 08:43:33 +0100 oj r262847 : merge from cvs to svn 2008-10-31 08:42:28 +0100 oj r262846 : merge from cvs to svn 2008-10-31 08:41:58 +0100 oj r262845 : merge from cvs to svn 2008-10-31 08:41:32 +0100 oj r262844 : merge from cvs to svn 2008-10-28 12:19:50 +0100 oj r262733 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:42 +0100 oj r262732 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:36 +0100 oj r262731 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:31 +0100 oj r262730 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:22 +0100 oj r262729 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:18 +0100 oj r262728 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:10 +0100 oj r262727 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:06 +0100 oj r262726 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:05 +0100 oj r262725 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:19:01 +0100 oj r262724 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:50 +0100 oj r262723 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:41 +0100 oj r262722 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:40 +0100 oj r262721 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:27 +0100 oj r262720 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:10 +0100 oj r262719 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:18:01 +0100 oj r262718 : #iXXXXX#: migrate CWS dba31e to SVN 2008-10-28 12:17:39 +0100 oj r262717 : #iXXXXX#: migrate CWS dba31e to SVN
2008-12-01 12:31:27 +00:00
case SQL_TOKEN_EVERY:
rFkt = m_pFunctionCell->GetEntry(6);
break;
case SQL_TOKEN_ANY:
rFkt = m_pFunctionCell->GetEntry(7);
break;
case SQL_TOKEN_SOME:
rFkt = m_pFunctionCell->GetEntry(8);
break;
case SQL_TOKEN_STDDEV_POP:
rFkt = m_pFunctionCell->GetEntry(9);
break;
case SQL_TOKEN_STDDEV_SAMP:
rFkt = m_pFunctionCell->GetEntry(10);
break;
case SQL_TOKEN_VAR_SAMP:
rFkt = m_pFunctionCell->GetEntry(11);
break;
case SQL_TOKEN_VAR_POP:
rFkt = m_pFunctionCell->GetEntry(12);
break;
case SQL_TOKEN_COLLECT:
rFkt = m_pFunctionCell->GetEntry(13);
break;
case SQL_TOKEN_FUSION:
rFkt = m_pFunctionCell->GetEntry(14);
break;
case SQL_TOKEN_INTERSECTION:
rFkt = m_pFunctionCell->GetEntry(15);
break;
default:
2001-02-05 08:26:47 +00:00
{
sal_Int32 nCount = comphelper::string::getTokenCount(m_aFunctionStrings, ';');
sal_Int32 i;
for( i = 0; i < nCount-1; i++ ) // grouping is not counted
{
if(rFkt.equalsIgnoreAsciiCase(m_aFunctionStrings.getToken(i, ';')))
{
rFkt = m_aFunctionStrings.getToken(i, ';');
break;
}
}
if(i == nCount-1)
bErg = false;
2001-02-05 08:26:47 +00:00
}
}
2001-02-05 08:26:47 +00:00
return bErg;
}
OUString OSelectionBrowseBox::GetCellContents(sal_Int32 nCellIndex, sal_uInt16 nColId)
2001-02-05 08:26:47 +00:00
{
if ( GetCurColumnId() == nColId && !m_bInUndoMode )
SaveModified();
2001-02-05 08:26:47 +00:00
sal_uInt16 nPos = GetColumnPos(nColId);
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEntry = getFields()[nPos - 1];
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry != NULL, "OSelectionBrowseBox::GetCellContents : invalid column id, prepare for GPF ... ");
2001-02-05 08:26:47 +00:00
2001-04-18 10:44:59 +00:00
switch (nCellIndex)
2001-02-05 08:26:47 +00:00
{
case BROW_VIS_ROW :
return pEntry->IsVisible() ? OUStringLiteral("1") : OUStringLiteral("0");
2001-02-05 08:26:47 +00:00
case BROW_ORDER_ROW:
{
sal_Int32 nIdx = m_pOrderCell->GetSelectEntryPos();
if (nIdx == LISTBOX_ENTRY_NOTFOUND)
2001-02-05 08:26:47 +00:00
nIdx = 0;
return OUString(nIdx);
2001-02-05 08:26:47 +00:00
}
default:
2002-08-19 07:01:32 +00:00
return GetCellText(nCellIndex, nColId);
2001-02-05 08:26:47 +00:00
}
}
void OSelectionBrowseBox::SetCellContents(sal_Int32 nRow, sal_uInt16 nColId, const OUString& strNewText)
2001-02-05 08:26:47 +00:00
{
bool bWasEditing = IsEditing() && (GetCurColumnId() == nColId) && IsRowVisible(static_cast<sal_uInt16>(nRow)) && (GetCurRow() == static_cast<sal_uInt16>(GetBrowseRow(nRow)));
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2001-02-05 08:26:47 +00:00
DeactivateCell();
sal_uInt16 nPos = GetColumnPos(nColId);
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEntry = getEntry(nPos - 1);
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry != NULL, "OSelectionBrowseBox::SetCellContents : invalid column id, prepare for GPF ... ");
2001-02-05 08:26:47 +00:00
2001-04-18 10:44:59 +00:00
switch (nRow)
2001-02-05 08:26:47 +00:00
{
case BROW_VIS_ROW:
pEntry->SetVisible(strNewText == "1");
2001-02-05 08:26:47 +00:00
break;
case BROW_FIELD_ROW:
pEntry->SetField(strNewText);
break;
case BROW_TABLE_ROW:
pEntry->SetAlias(strNewText);
break;
case BROW_ORDER_ROW:
{
sal_uInt16 nIdx = (sal_uInt16)strNewText.toInt32();
2001-02-05 08:26:47 +00:00
pEntry->SetOrderDir(EOrderDir(nIdx));
} break;
case BROW_COLUMNALIAS_ROW:
pEntry->SetFieldAlias(strNewText);
break;
case BROW_FUNCTION_ROW:
{
OUString sGroupFunctionName = m_aFunctionStrings.getToken(comphelper::string::getTokenCount(m_aFunctionStrings, ';')-1, ';');
2001-02-05 08:26:47 +00:00
pEntry->SetFunction(strNewText);
// first reset this two member
sal_Int32 nFunctionType = pEntry->GetFunctionType();
nFunctionType &= ~FKT_AGGREGATE;
pEntry->SetFunctionType(nFunctionType);
if ( pEntry->IsGroupBy() && !sGroupFunctionName.equalsIgnoreAsciiCase(strNewText) )
pEntry->SetGroupBy(false);
if ( sGroupFunctionName.equalsIgnoreAsciiCase(strNewText) )
pEntry->SetGroupBy(true);
else if ( !strNewText.isEmpty() )
{
nFunctionType |= FKT_AGGREGATE;
pEntry->SetFunctionType(nFunctionType);
}
} break;
2001-02-05 08:26:47 +00:00
default:
pEntry->SetCriteria(sal_uInt16(nRow - BROW_CRIT1_ROW), strNewText);
2001-02-05 08:26:47 +00:00
}
2001-04-18 10:44:59 +00:00
long nCellIndex = GetRealRow(nRow);
if(IsRowVisible(static_cast<sal_uInt16>(nRow)))
2002-08-19 07:01:32 +00:00
RowModified(nCellIndex, nColId);
2001-02-05 08:26:47 +00:00
// the appropriate field-description is now empty -> set Visible to sal_False (now it is consistent to normal empty rows)
2001-02-05 08:26:47 +00:00
if (pEntry->IsEmpty())
pEntry->SetVisible(false);
2001-02-05 08:26:47 +00:00
2001-10-26 06:49:36 +00:00
if (bWasEditing)
2002-08-19 07:01:32 +00:00
ActivateCell(nCellIndex, nColId);
2001-02-05 08:26:47 +00:00
static_cast<OQueryController&>(getDesignView()->getController()).setModified( sal_True );
2001-02-05 08:26:47 +00:00
}
2001-02-05 08:26:47 +00:00
sal_uInt32 OSelectionBrowseBox::GetTotalCellWidth(long nRow, sal_uInt16 nColId) const
{
long nRowId = GetRealRow(nRow);
if (nRowId == BROW_VIS_ROW)
return CHECKBOX_SIZE;
else
return GetDataWindow().GetTextWidth(GetCellText(nRowId, nColId));
}
void OSelectionBrowseBox::ColumnResized(sal_uInt16 nColId)
{
if (static_cast<OQueryController&>(getDesignView()->getController()).isReadOnly())
2001-02-05 08:26:47 +00:00
return;
// The resizing of columns can't be suppressed (BrowseBox doesn't support that) so we have to do this
// fake. It's not _that_ bad : the user may change column widths while in read-only mode to see all details
// but the changes aren't permanent ...
sal_uInt16 nPos = GetColumnPos(nColId);
2011-02-03 00:33:36 +01:00
OSL_ENSURE(nPos <= getFields().size(),"ColumnResized:: nColId sollte nicht groesser als List::count sein!");
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEntry = getEntry(nPos-1);
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry.is(), "OSelectionBrowseBox::ColumnResized : keine FieldDescription !");
static_cast<OQueryController&>(getDesignView()->getController()).setModified( sal_True );
EditBrowseBox::ColumnResized(nColId);
2001-02-05 08:26:47 +00:00
2010-10-15 12:22:54 -05:00
if ( pEntry.is())
2001-02-05 08:26:47 +00:00
{
if ( !m_bInUndoMode )
{
// create the undo action
OTabFieldSizedUndoAct* pUndo = new OTabFieldSizedUndoAct(this);
pUndo->SetColumnPosition( nPos );
pUndo->SetOriginalWidth(pEntry->GetColWidth());
getDesignView()->getController().addUndoActionAndInvalidate(pUndo);
}
2001-02-23 14:04:37 +00:00
pEntry->SetColWidth(sal_uInt16(GetColumnWidth(nColId)));
2001-02-05 08:26:47 +00:00
}
}
sal_uInt32 OSelectionBrowseBox::GetTotalCellWidth(long nRowId, sal_uInt16 nColId)
{
sal_uInt16 nPos = GetColumnPos(nColId);
2011-02-03 00:33:36 +01:00
OSL_ENSURE((nPos == 0) || (nPos <= getFields().size()), "OSelectionBrowseBox::GetTotalCellWidth : invalid parameter nColId");
2001-02-05 08:26:47 +00:00
2002-08-19 07:01:32 +00:00
OTableFieldDescRef pEntry = getFields()[nPos-1];
2011-02-03 00:33:36 +01:00
OSL_ENSURE(pEntry.is(), "OSelectionBrowseBox::GetTotalCellWidth : invalid FieldDescription !");
2001-02-05 08:26:47 +00:00
long nRow = GetRealRow(nRowId);
OUString strText(GetCellText(nRow, nColId));
2001-02-05 08:26:47 +00:00
return GetDataWindow().LogicToPixel(Size(GetDataWindow().GetTextWidth(strText),0)).Width();
}
bool OSelectionBrowseBox::isCutAllowed()
2001-04-18 10:44:59 +00:00
{
bool bCutAllowed = false;
2001-04-18 10:44:59 +00:00
long nRow = GetRealRow(GetCurRow());
switch (nRow)
{
case BROW_VIS_ROW:
case BROW_ORDER_ROW:
case BROW_TABLE_ROW:
case BROW_FUNCTION_ROW:
break;
case BROW_FIELD_ROW:
bCutAllowed = !m_pFieldCell->GetSelected().isEmpty();
2001-04-18 10:44:59 +00:00
break;
default:
bCutAllowed = !m_pTextCell->GetSelected().isEmpty();
2001-04-18 10:44:59 +00:00
break;
}
return bCutAllowed;
}
2001-04-18 10:44:59 +00:00
void OSelectionBrowseBox::cut()
{
long nRow = GetRealRow(GetCurRow());
switch (nRow)
{
case BROW_FIELD_ROW:
m_pFieldCell->Cut();
m_pFieldCell->SetModifyFlag();
2001-04-18 10:44:59 +00:00
break;
default:
m_pTextCell->Cut();
m_pTextCell->SetModifyFlag();
2001-04-18 10:44:59 +00:00
}
SaveModified();
2001-04-18 10:44:59 +00:00
RowModified(GetBrowseRow(nRow), GetCurColumnId());
invalidateUndoRedo();
2001-04-18 10:44:59 +00:00
}
2001-04-18 10:44:59 +00:00
void OSelectionBrowseBox::paste()
{
long nRow = GetRealRow(GetCurRow());
switch (nRow)
{
case BROW_FIELD_ROW:
m_pFieldCell->Paste();
2001-08-30 12:35:55 +00:00
m_pFieldCell->SetModifyFlag();
2001-04-18 10:44:59 +00:00
break;
default:
m_pTextCell->Paste();
2001-08-30 12:35:38 +00:00
m_pTextCell->SetModifyFlag();
2001-04-18 10:44:59 +00:00
}
RowModified(GetBrowseRow(nRow), GetCurColumnId());
invalidateUndoRedo();
2001-04-18 10:44:59 +00:00
}
bool OSelectionBrowseBox::isPasteAllowed()
{
bool bPasteAllowed = true;
long nRow = GetRealRow(GetCurRow());
switch (nRow)
{
case BROW_VIS_ROW:
case BROW_ORDER_ROW:
case BROW_TABLE_ROW:
case BROW_FUNCTION_ROW:
bPasteAllowed = false;
break;
}
return bPasteAllowed;
}
bool OSelectionBrowseBox::isCopyAllowed()
{
return isCutAllowed();
}
2001-04-18 10:44:59 +00:00
void OSelectionBrowseBox::copy()
{
long nRow = GetRealRow(GetCurRow());
switch (nRow)
{
case BROW_FIELD_ROW:
m_pFieldCell->Copy();
break;
default:
m_pTextCell->Copy();
}
}
void OSelectionBrowseBox::appendUndoAction(const OUString& _rOldValue, const OUString& _rNewValue, sal_Int32 _nRow, bool& _bListAction)
{
if ( !m_bInUndoMode && _rNewValue != _rOldValue )
{
if ( !_bListAction )
{
_bListAction = true;
static_cast<OQueryController&>(getDesignView()->getController()).GetUndoManager().EnterListAction(OUString(),OUString());
}
appendUndoAction(_rOldValue,_rNewValue,_nRow);
}
}
void OSelectionBrowseBox::appendUndoAction(const OUString& _rOldValue,const OUString& _rNewValue,sal_Int32 _nRow)
2001-04-18 10:44:59 +00:00
{
if ( !m_bInUndoMode && _rNewValue != _rOldValue )
2001-04-18 10:44:59 +00:00
{
OTabFieldCellModifiedUndoAct* pUndoAct = new OTabFieldCellModifiedUndoAct(this);
pUndoAct->SetCellIndex(_nRow);
OSL_ENSURE(GetColumnPos(GetCurColumnId()) != BROWSER_INVALIDID,"Current position isn't valid!");
pUndoAct->SetColumnPosition( GetColumnPos(GetCurColumnId()) );
2001-04-18 10:44:59 +00:00
pUndoAct->SetCellContents(_rOldValue);
getDesignView()->getController().addUndoActionAndInvalidate(pUndoAct);
2001-04-18 10:44:59 +00:00
}
}
IMPL_LINK_NOARG(OSelectionBrowseBox, OnInvalidateTimer)
2001-04-18 12:20:48 +00:00
{
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature(SID_CUT);
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature(SID_COPY);
static_cast<OQueryController&>(getDesignView()->getController()).InvalidateFeature(SID_PASTE);
2001-04-18 12:20:48 +00:00
if(!m_bStopTimer)
m_timerInvalidate.Start();
return 0L;
}
2001-04-18 12:20:48 +00:00
void OSelectionBrowseBox::stopTimer()
{
m_bStopTimer = true;
2001-04-18 12:20:48 +00:00
if (m_timerInvalidate.IsActive())
m_timerInvalidate.Stop();
}
2001-04-18 12:20:48 +00:00
void OSelectionBrowseBox::startTimer()
{
m_bStopTimer = false;
2001-04-18 12:20:48 +00:00
if (!m_timerInvalidate.IsActive())
m_timerInvalidate.Start();
}
OTableFields& OSelectionBrowseBox::getFields() const
2001-04-30 12:02:01 +00:00
{
OQueryController& rController = static_cast<OQueryController&>(getDesignView()->getController());
return rController.getTableFieldDesc();
2001-04-30 12:02:01 +00:00
}
void OSelectionBrowseBox::enableControl(const OTableFieldDescRef& _rEntry,Window* _pControl)
{
bool bEnable = !_rEntry->isCondition();
_pControl->Enable(bEnable);
_pControl->EnableInput(bEnable);
}
void OSelectionBrowseBox::setTextCellContext(const OTableFieldDescRef& _rEntry,const OUString& _sText,const OString& _sHelpId)
{
m_pTextCell->SetText(_sText);
m_pTextCell->ClearModifyFlag();
if (!m_pTextCell->HasFocus())
m_pTextCell->GrabFocus();
enableControl(_rEntry,m_pTextCell);
if (m_pTextCell->GetHelpId() != _sHelpId)
// as TextCell is used in various contexts I will delete the cached HelpText
m_pTextCell->SetHelpText(OUString());
m_pTextCell->SetHelpId(_sHelpId);
}
void OSelectionBrowseBox::invalidateUndoRedo()
{
OQueryController& rController = static_cast<OQueryController&>(getDesignView()->getController());
rController.InvalidateFeature( ID_BROWSER_UNDO );
rController.InvalidateFeature( ID_BROWSER_REDO );
rController.InvalidateFeature( ID_BROWSER_QUERY_EXECUTE );
}
OTableFieldDescRef OSelectionBrowseBox::getEntry(OTableFields::size_type _nPos)
{
// we have to check if we need a new entry at this position
OTableFields& aFields = getFields();
OSL_ENSURE(aFields.size() > _nPos,"ColID is to great!");
2001-04-18 12:20:48 +00:00
OTableFieldDescRef pEntry = aFields[_nPos];
2010-10-15 12:22:54 -05:00
OSL_ENSURE(pEntry.is(),"Invalid entry!");
if ( !pEntry.is() )
{
pEntry = new OTableFieldDesc();
pEntry->SetColumnId(
GetColumnId(sal::static_int_cast< sal_uInt16 >(_nPos+1)));
aFields[_nPos] = pEntry;
}
return pEntry;
}
void OSelectionBrowseBox::GetFocus()
{
2001-10-23 11:30:27 +00:00
if(!IsEditing() && !m_bWasEditing)
ActivateCell();
EditBrowseBox::GetFocus();
}
void OSelectionBrowseBox::DeactivateCell(bool _bUpdate)
2001-10-26 06:49:36 +00:00
{
m_bWasEditing = true;
2001-10-26 06:49:36 +00:00
EditBrowseBox::DeactivateCell(_bUpdate);
m_bWasEditing = false;
2001-10-26 06:49:36 +00:00
}
OUString OSelectionBrowseBox::GetRowDescription( sal_Int32 _nRow ) const
2002-04-23 06:58:14 +00:00
{
OUString aLabel(ModuleRes(STR_QUERY_HANDLETEXT));
2002-04-23 06:58:14 +00:00
// from BROW_CRIT2_ROW onwards all rows are shown as "or"
sal_Int32 nToken = (_nRow >= GetBrowseRow(BROW_CRIT2_ROW))
? BROW_CRIT2_ROW : GetRealRow(_nRow);
return aLabel.getToken(nToken, ';');
2002-04-23 06:58:14 +00:00
}
OUString OSelectionBrowseBox::GetAccessibleObjectName( ::svt::AccessibleBrowseBoxObjType _eObjType,sal_Int32 _nPosition) const
2002-04-23 06:58:14 +00:00
{
OUString sRetText;
2002-04-23 06:58:14 +00:00
switch( _eObjType )
{
case ::svt::BBTYPE_ROWHEADERCELL:
sRetText = GetRowDescription(_nPosition);
break;
default:
sRetText = EditBrowseBox::GetAccessibleObjectDescription(_eObjType,_nPosition);
2002-04-23 06:58:14 +00:00
}
return sRetText;
}
bool OSelectionBrowseBox::fillEntryTable(OTableFieldDescRef& _pEntry,const OUString& _sTableName)
{
bool bRet = false;
OJoinTableView::OTableWindowMap& rTabWinList = getDesignView()->getTableView()->GetTabWinMap();
OJoinTableView::OTableWindowMap::iterator aIter = rTabWinList.find(_sTableName);
if(aIter != rTabWinList.end())
{
OQueryTableWindow* pEntryTab = static_cast<OQueryTableWindow*>(aIter->second);
if (pEntryTab)
{
_pEntry->SetTable(pEntryTab->GetTableName());
_pEntry->SetTabWindow(pEntryTab);
bRet = true;
}
}
return bRet;
}
void OSelectionBrowseBox::setFunctionCell(OTableFieldDescRef& _pEntry)
{
Reference< XConnection> xConnection = static_cast<OQueryController&>(getDesignView()->getController()).getConnection();
if ( xConnection.is() )
{
2012-02-09 18:47:32 +01:00
// Aggregate functions in general only available with Core SQL
if ( lcl_SupportsCoreSQLGrammar(xConnection) )
{
// if we have an asterisk, no other function than count is allowed
m_pFunctionCell->Clear();
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(0, ';'));
if ( isFieldNameAsterisk(_pEntry->GetField()) )
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(2, ';')); // 2 -> COUNT
else
{
sal_Int32 nCount = comphelper::string::getTokenCount(m_aFunctionStrings, ';');
if ( _pEntry->isNumeric() )
--nCount;
for( sal_Int32 nIdx = 1; nIdx < nCount; nIdx++ )
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(nIdx, ';'));
}
if ( _pEntry->IsGroupBy() )
{
OSL_ENSURE(!_pEntry->isNumeric(),"Not allowed to combine group by and numeric values!");
m_pFunctionCell->SelectEntry(m_pFunctionCell->GetEntry(m_pFunctionCell->GetEntryCount() - 1));
}
else if ( m_pFunctionCell->GetEntryPos(OUString(_pEntry->GetFunction())) != COMBOBOX_ENTRY_NOTFOUND )
m_pFunctionCell->SelectEntry(OUString(_pEntry->GetFunction()));
else
m_pFunctionCell->SelectEntryPos(0);
enableControl(_pEntry,m_pFunctionCell);
}
else
{
2012-02-09 18:47:32 +01:00
// only COUNT(*) and COUNT("table".*) allowed
bool bCountRemoved = !isFieldNameAsterisk(_pEntry->GetField());
if ( bCountRemoved )
m_pFunctionCell->RemoveEntry(1);
if ( !bCountRemoved && m_pFunctionCell->GetEntryCount() < 2)
m_pFunctionCell->InsertEntry(m_aFunctionStrings.getToken(2, ';')); // 2 -> COUNT
if(m_pFunctionCell->GetEntryPos(OUString(_pEntry->GetFunction())) != COMBOBOX_ENTRY_NOTFOUND)
m_pFunctionCell->SelectEntry(_pEntry->GetFunction());
else
m_pFunctionCell->SelectEntryPos(0);
}
}
}
Reference< XAccessible > OSelectionBrowseBox::CreateAccessibleCell( sal_Int32 _nRow, sal_uInt16 _nColumnPos )
{
OTableFieldDescRef pEntry = NULL;
if(getFields().size() > sal_uInt16(_nColumnPos - 1))
pEntry = getFields()[_nColumnPos - 1];
2010-10-15 12:22:54 -05:00
if ( _nRow == BROW_VIS_ROW && pEntry.is() )
return EditBrowseBox::CreateAccessibleCheckBoxCell( _nRow, _nColumnPos,pEntry->IsVisible() ? TRISTATE_TRUE : TRISTATE_FALSE );
return EditBrowseBox::CreateAccessibleCell( _nRow, _nColumnPos );
}
bool OSelectionBrowseBox::HasFieldByAliasName(const OUString& rFieldName, OTableFieldDescRef& rInfo) const
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
{
OTableFields& aFields = getFields();
OTableFields::iterator aIter = aFields.begin();
OTableFields::iterator aEnd = aFields.end();
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
for(;aIter != aEnd;++aIter)
{
if ( (*aIter)->GetFieldAlias() == rFieldName )
{
2010-10-15 12:22:54 -05:00
*rInfo = *(*aIter);
CWS-TOOLING: integrate CWS dba31f 2008-12-10 14:16:09 +0100 oj r265185 : #i96658# remove is 2008-12-10 08:46:07 +0100 oj r265147 : remove duplicate ids 2008-12-10 08:35:02 +0100 oj r265146 : #i96658# remove is 2008-12-09 11:44:35 +0100 oj r265072 : use of tools::StringresourceList 2008-12-09 11:43:41 +0100 oj r265071 : new class to read string elements from a Resource 2008-12-09 11:41:56 +0100 oj r265070 : export StringListResource 2008-12-09 11:38:17 +0100 oj r265068 : change string ; to more string objects 2008-12-08 12:11:43 +0100 oj r264985 : change default-license-id to lic-en-US 2008-12-05 12:06:09 +0100 oj r264896 : disable check to uncheck 2008-12-04 08:58:50 +0100 oj r264814 : #i96517,i96520,i96522# d&d, background, state fixed 2008-12-04 08:53:29 +0100 oj r264813 : #i96434# use document ui name from filter 2008-12-04 08:41:06 +0100 oj r264812 : #i96434# use document ui name from filter 2008-12-02 13:48:49 +0100 lla r264697 : #i96526# extra string for default otr wasn't found 2008-11-28 11:46:31 +0100 oj r264536 : move toolbar and resize add field dlg 2008-11-28 08:38:22 +0100 oj r264526 : load string resources 2008-11-27 19:28:52 +0100 oj r264520 : unsigned 2008-11-27 19:10:19 +0100 oj r264517 : move class into unnamed namespace 2008-11-27 18:33:38 +0100 oj r264514 : wrong param 2008-11-27 16:52:39 +0100 oj r264510 : #i96622# wrong string replacement 2008-11-27 16:46:03 +0100 oj r264509 : remove unused var 2008-11-27 13:37:16 +0100 oj r264484 : #i96432# notify only when not in special mode of the page 2008-11-27 13:16:47 +0100 oj r264479 : #i95224# accept alias in group by 2008-11-27 12:35:19 +0100 oj r264477 : #i95416# always show localized strings in the start marker 2008-11-27 09:49:29 +0100 oj r264455 : #i93460# set split pos 2008-11-27 09:05:27 +0100 oj r264447 : #i96453# use extension from mimetype / mediatype 2008-11-26 16:24:43 +0100 oj r264416 : #i96520# #i96522# #i96519# some changes at the add field dialog 2008-11-26 16:20:27 +0100 oj r264414 : #i93420# prevent to register a none system file url 2008-11-26 16:19:02 +0100 oj r264413 : #i96522# new class to paste multiple objects 2008-11-26 10:06:12 +0100 oj r264349 : #i96191# introduce new error message and check if type was defined aand should not be changed 2008-11-26 10:06:12 +0100 oj r264348 : #i96191# throw error when decimal is to big 2008-11-25 12:08:59 +0100 oj r264281 : #i96431# correct state for align and move 2008-11-25 11:54:47 +0100 oj r264280 : #i96428# when new bind to first table 2008-11-25 11:49:55 +0100 oj r264279 : #i96434# add report output format to inspection 2008-11-25 11:49:05 +0100 oj r264278 : #i96434# add report output format to inspection 2008-11-24 10:46:23 +0100 oj r264215 : #i96458# size width for controls 2008-11-24 09:28:56 +0100 oj r264199 : #i96459# mark detail section when nothing is selected 2008-11-20 12:02:35 +0100 oj r264038 : #i96191# fix check for prec 2008-11-20 08:06:32 +0100 oj r264026 : #i90949# patch MID function 2008-11-11 13:14:58 +0100 oj r263555 : #i96086# apply patch 2008-11-11 11:34:46 +0100 oj r263549 : #i94128# correct height of section when controls moved outside 2008-11-11 07:52:08 +0100 oj r263544 : #i94729# fix string with ; as sep 2008-11-11 07:45:27 +0100 oj r263543 : #i95222# export chart title style 2008-11-11 07:43:37 +0100 oj r263542 : #i92541# fix line height
2008-12-10 13:41:25 +00:00
break;
}
}
return aIter != aEnd;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */