2000-09-18 16:07:07 +00:00
/*************************************************************************
*
2008-04-11 08:33:45 +00:00
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER .
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* Copyright 2008 by Sun Microsystems , Inc .
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* OpenOffice . org - a multi - platform office productivity suite
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* $ RCSfile : unocontrols . cxx , v $
* $ Revision : 1.87 $
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* This file is part of OpenOffice . org .
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* OpenOffice . org is free software : you can redistribute it and / or modify
* it under the terms of the GNU Lesser General Public License version 3
* only , as published by the Free Software Foundation .
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* OpenOffice . org is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU Lesser General Public License version 3 for more details
* ( a copy is included in the LICENSE file that accompanied this code ) .
2000-09-18 16:07:07 +00:00
*
2008-04-11 08:33:45 +00:00
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice . org . If not , see
* < http : //www.openoffice.org/license.html>
* for a copy of the LGPLv3 License .
2000-09-18 16:07:07 +00:00
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2006-09-16 11:20:45 +00:00
// MARKER(update_precomp.py): autogen include statement, do not remove
# include "precompiled_toolkit.hxx"
2000-09-18 16:07:07 +00:00
# include <com/sun/star/awt/XTextArea.hpp>
# include <com/sun/star/awt/XVclWindowPeer.hpp>
# include <com/sun/star/lang/XMultiServiceFactory.hpp>
2001-01-24 14:00:58 +00:00
# include <com/sun/star/awt/PosSize.hpp>
2004-07-05 14:57:14 +00:00
# include <com/sun/star/awt/VisualEffect.hpp>
2004-05-10 12:41:58 +00:00
# include <com/sun/star/awt/LineEndFormat.hpp>
2006-10-18 12:15:32 +00:00
# include <com/sun/star/graphic/XGraphicProvider.hpp>
2008-12-01 12:31:27 +00:00
# include <com/sun/star/graphic/GraphicObject.hpp>
2004-04-02 09:33:51 +00:00
# include <com/sun/star/util/Date.hpp>
2008-12-01 12:31:27 +00:00
# include <com/sun/star/awt/ImageScaleMode.hpp>
2004-07-05 14:57:14 +00:00
2003-03-27 16:05:12 +00:00
# include <toolkit/controls/formattedcontrol.hxx>
2004-05-19 15:46:21 +00:00
# include <toolkit/controls/roadmapcontrol.hxx>
2000-09-18 16:07:07 +00:00
# include <toolkit/controls/unocontrols.hxx>
2001-01-24 14:00:58 +00:00
# include <toolkit/controls/geometrycontrolmodel.hxx>
2001-01-25 12:40:59 +00:00
# include <toolkit/controls/stdtabcontroller.hxx>
2000-09-18 16:07:07 +00:00
# include <toolkit/helper/property.hxx>
# include <toolkit/helper/unopropertyarrayhelper.hxx>
# include <toolkit/helper/unomemorystream.hxx>
# include <toolkit/helper/servicenames.hxx>
# include <toolkit/helper/macros.hxx>
2004-07-05 14:57:14 +00:00
# include <toolkit/helper/imagealign.hxx>
2000-09-18 16:07:07 +00:00
2008-01-14 11:58:14 +00:00
// for introspection
# include <toolkit/awt/vclxwindows.hxx>
2000-09-18 16:07:07 +00:00
# include <cppuhelper/typeprovider.hxx>
2006-10-18 12:15:32 +00:00
# include <comphelper/componentcontext.hxx>
2000-11-02 10:12:12 +00:00
# include <comphelper/processfactory.hxx>
2001-08-07 10:18:02 +00:00
# include <comphelper/extract.hxx>
2000-09-18 16:07:07 +00:00
# include <vcl/wrkwin.hxx>
# include <vcl/svapp.hxx>
# include <vcl/edit.hxx>
2001-08-07 10:18:02 +00:00
# ifndef _SV_BUTTON_HXX
2000-09-18 16:07:07 +00:00
# include <vcl/button.hxx>
2001-08-07 10:18:02 +00:00
# endif
2000-09-18 16:07:07 +00:00
# include <vcl/group.hxx>
# include <vcl/fixed.hxx>
# include <vcl/lstbox.hxx>
# include <vcl/combobox.hxx>
# include <tools/debug.hxx>
2006-10-18 12:15:32 +00:00
# include <tools/diagnose_ex.h>
2001-08-10 08:10:14 +00:00
# include <tools/date.hxx>
# include <tools/time.hxx>
2004-05-07 15:17:46 +00:00
# include <algorithm>
2001-08-10 08:10:14 +00:00
2001-01-24 14:00:58 +00:00
using namespace : : com : : sun : : star ;
2003-03-27 16:05:12 +00:00
using namespace : : toolkit ;
2001-01-24 14:00:58 +00:00
2003-05-22 09:52:09 +00:00
// ----------------------------------------------------
// helper
// ----------------------------------------------------
static void lcl_knitImageComponents ( const uno : : Reference < awt : : XControlModel > & _rxModel ,
const uno : : Reference < awt : : XWindowPeer > & _rxPeer ,
bool _bAdd )
{
uno : : Reference < awt : : XImageProducer > xProducer ( _rxModel , uno : : UNO_QUERY ) ;
if ( xProducer . is ( ) )
{
uno : : Reference < awt : : XImageConsumer > xConsumer ( _rxPeer , uno : : UNO_QUERY ) ;
if ( xConsumer . is ( ) )
{
if ( _bAdd )
{
xProducer - > addConsumer ( xConsumer ) ;
xProducer - > startProduction ( ) ;
}
else
xProducer - > removeConsumer ( xConsumer ) ;
}
}
}
2000-09-18 16:07:07 +00:00
// ----------------------------------------------------
// class UnoControlEditModel
// ----------------------------------------------------
UnoControlEditModel : : UnoControlEditModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXEdit ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlEditModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlEditModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlEditModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
2004-05-10 12:41:58 +00:00
uno : : Any aReturn ;
switch ( nPropId )
2000-09-18 16:07:07 +00:00
{
2004-05-10 12:41:58 +00:00
case BASEPROPERTY_LINE_END_FORMAT :
aReturn < < = ( sal_Int16 ) awt : : LineEndFormat : : LINE_FEED ; // LF
break ;
case BASEPROPERTY_DEFAULTCONTROL :
aReturn < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlEdit ) ;
break ;
default :
aReturn = UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
break ;
2000-09-18 16:07:07 +00:00
}
2004-05-10 12:41:58 +00:00
return aReturn ;
2000-09-18 16:07:07 +00:00
}
: : cppu : : IPropertyArrayHelper & UnoControlEditModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlEditModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoEditControl
// ----------------------------------------------------
UnoEditControl : : UnoEditControl ( )
2004-05-07 15:17:46 +00:00
: maTextListeners ( * this )
2006-06-19 22:05:22 +00:00
, mnMaxTextLen ( 0 )
2004-05-07 15:17:46 +00:00
, mbSetTextInPeer ( sal_False )
2006-06-19 22:05:22 +00:00
, mbSetMaxTextLenInPeer ( sal_False )
2004-05-07 15:17:46 +00:00
, mbHasTextProperty ( sal_False )
2000-09-18 16:07:07 +00:00
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
2004-05-19 15:46:21 +00:00
mnMaxTextLen = 0 ;
mbSetMaxTextLenInPeer = FALSE ;
2004-05-07 15:17:46 +00:00
}
uno : : Any SAL_CALL UnoEditControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
uno : : Any aReturn = UnoControlBase : : queryAggregation ( rType ) ;
if ( ! aReturn . hasValue ( ) )
aReturn = UnoEditControl_Base : : queryInterface ( rType ) ;
return aReturn ;
}
2001-10-11 14:27:26 +00:00
2004-05-07 15:17:46 +00:00
uno : : Any SAL_CALL UnoEditControl : : queryInterface ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
return UnoControlBase : : queryInterface ( rType ) ;
}
2001-10-11 14:27:26 +00:00
2004-05-07 15:17:46 +00:00
void SAL_CALL UnoEditControl : : acquire ( ) throw ( )
{
UnoControlBase : : acquire ( ) ;
}
2001-10-11 14:27:26 +00:00
2004-05-07 15:17:46 +00:00
void SAL_CALL UnoEditControl : : release ( ) throw ( )
{
UnoControlBase : : release ( ) ;
2000-09-18 16:07:07 +00:00
}
2004-05-07 15:17:46 +00:00
IMPLEMENT_FORWARD_XTYPEPROVIDER2 ( UnoEditControl , UnoControlBase , UnoEditControl_Base )
2000-09-18 16:07:07 +00:00
: : rtl : : OUString UnoEditControl : : GetComponentServiceName ( )
{
2004-05-07 15:17:46 +00:00
// by default, we want a simple edit field
: : rtl : : OUString sName ( : : rtl : : OUString : : createFromAscii ( " Edit " ) ) ;
// but maybe we are to display multi-line text?
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_MULTILINE ) ) ;
2006-08-29 09:58:09 +00:00
sal_Bool b = sal_Bool ( ) ;
2000-09-18 16:07:07 +00:00
if ( ( aVal > > = b ) & & b )
2004-05-07 15:17:46 +00:00
sName = : : rtl : : OUString : : createFromAscii ( " MultiLineEdit " ) ;
return sName ;
}
sal_Bool SAL_CALL UnoEditControl : : setModel ( const uno : : Reference < awt : : XControlModel > & _rModel ) throw ( uno : : RuntimeException )
{
sal_Bool bReturn = UnoControlBase : : setModel ( _rModel ) ;
mbHasTextProperty = ImplHasProperty ( BASEPROPERTY_TEXT ) ;
return bReturn ;
2000-09-18 16:07:07 +00:00
}
2002-09-05 07:54:42 +00:00
void UnoEditControl : : ImplSetPeerProperty ( const : : rtl : : OUString & rPropName , const uno : : Any & rVal )
{
sal_Bool bDone = sal_False ;
2004-05-07 15:17:46 +00:00
if ( GetPropertyId ( rPropName ) = = BASEPROPERTY_TEXT )
2002-09-05 07:54:42 +00:00
{
// #96986# use setText(), or text listener will not be called.
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xTextComponent ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 07:54:42 +00:00
if ( xTextComponent . is ( ) )
{
2004-05-07 15:17:46 +00:00
: : rtl : : OUString sText ;
rVal > > = sText ;
CWS-TOOLING: integrate CWS dba32b
2009-06-03 14:58:08 +0200 fs r272581 : #i102439#
2009-05-29 13:56:18 +0200 fs r272456 : remove the sub form when the 'add subform' setting changes from <true/> to <false/>, not only its controls
2009-05-29 13:19:27 +0200 fs r272454 : display '(Default)' instead of an empty string when a control has the default font
2009-05-28 20:49:18 +0200 fs r272428 : #i98162# getFirstSelectedValue: do not return reference to a temporary
2009-05-27 15:30:22 +0200 msc r272353 : #102303#
2009-05-26 13:03:06 +0200 fs r272295 : spelling
2009-05-26 12:59:54 +0200 fs r272294 : merge m48 version to get latest cygwin related fixes
2009-05-25 14:02:06 +0200 fs r272239 : remove references to local files, needed for debugging sessions only
2009-05-25 14:01:16 +0200 fs r272238 : #i102021# ensure members such as bNumberFormat are initialized before actually returning them
2009-05-25 13:10:20 +0200 fs r272236 : #i10000# reset ENABLE_EVOAB2
2009-05-22 06:44:45 +0200 oj r272167 : #i99104# add import handler for calc-sett
2009-05-22 06:42:27 +0200 oj r272166 : #i99104# impl NullDate as member
2009-05-22 06:36:22 +0200 oj r272165 : #i99104# handle nulldate from parent model
2009-05-22 06:33:13 +0200 oj r272164 : #i99104# export and import calculation-settings and nulldate
2009-05-22 06:27:50 +0200 oj r272163 : #i99104# export and import calculation-settings and nulldate
2009-05-20 13:29:58 +0200 oj r272118 : #i99911# handle invalid name
2009-05-20 13:28:49 +0200 oj r272117 : #i101261# handle different rowsets
2009-05-20 11:29:55 +0200 msc r272111 : #i100000#
2009-05-20 11:28:27 +0200 msc r272110 : merge in change from dba32a
2009-05-20 11:27:38 +0200 msc r272109 : #102082# CTRL + C does not work
2009-05-20 09:43:36 +0200 oj r272106 : clean up includes
2009-05-20 09:32:15 +0200 oj r272105 : #i99060# merge error resovled now VERTICAL_ALIGN is in both stmt
2009-05-20 08:37:21 +0200 msc r272104 : add workaround for issue #102010#
2009-05-20 08:10:12 +0200 oj r272103 : #i99104# use numberformatkey
2009-05-20 08:07:02 +0200 oj r272102 : #i99104# use column info from rowset
2009-05-20 08:04:43 +0200 oj r272101 : #i102032# use a special column type where prec and scale are the values currently set at the column
2009-05-20 08:03:04 +0200 oj r272100 : #i102032# correct type info, we have to use SQL defined type names
2009-05-19 10:27:02 +0200 oj r272061 : #i99104# export null-date
2009-05-19 08:26:53 +0200 oj r272056 : #i99104# export null-date
2009-05-18 13:15:10 +0200 msc r272014 : add issue #102019#
2009-05-18 11:33:07 +0200 msc r272005 : add issue #102019#
2009-05-18 08:59:45 +0200 msc r271996 : add workaroud for issue #102010#
2009-05-15 10:21:24 +0200 msc r271929 : #101944#
2009-05-11 21:18:30 +0200 fs r271792 : #i99914#
2009-05-08 13:52:06 +0200 oj r271715 : #i96423# remember column span
2009-05-08 11:26:19 +0200 oj r271708 : #i98605# impl new scale mode
2009-05-08 10:33:35 +0200 fs r271706 : SendUserCall: only call into the shape notification routine for UserCall types where this is necessary (performance issue)
2009-05-07 20:52:44 +0200 fs r271698 : outsource ShapeProperty from shapepropertynotifier.hxx
2009-05-07 20:43:33 +0200 fs r271697 : #i99056# use notifyShapePropertyChange, instead of getShapePropertyChangeNotifier - the latter throws if no shape exists, yet
2009-05-07 20:33:58 +0200 fs r271696 : #i99056# +notifyShapePropertyChange: allow notifying chages without checking whether there actually already exists an SvxShape
2009-05-07 16:22:15 +0200 fs r271679 : #i10000# cygwin needs quotes around the classpath
2009-05-07 16:21:37 +0200 fs r271678 : #i10000# cygwin needs quotes around the classpath
2009-05-07 16:01:11 +0200 oj r271677 : #i99914# notify parent handler
2009-05-07 15:54:54 +0200 fs r271676 : #i10000# cygwin needs some quoting
2009-05-07 14:49:48 +0200 oj r271672 : #i99277# quote alias name
2009-05-07 14:48:12 +0200 oj r271671 : #i92538# add ~ in front of type
2009-05-07 14:37:13 +0200 oj r271667 : #i99118# change type from char to varchar
2009-05-07 14:36:23 +0200 oj r271666 : #i99118# clear dest columns when changing to create new table
2009-05-07 13:35:32 +0200 oj r271657 : #i94467# handle type 0 as double as well
2009-05-07 13:20:49 +0200 oj r271655 : i99743# setNull when varchar is no text
2009-05-07 12:58:06 +0200 fs r271651 : initialize the SdrObject's property change notifier after the ctor, if necessary
2009-05-07 11:47:18 +0200 fs r271647 : #i10000#
2009-05-07 10:57:16 +0200 fs r271639 : OPropertyBrowserController::propertyChange: care for the current property state, too, and properly forward it to the UI
2009-05-07 10:18:14 +0200 fs r271636 : onNewComponent: do not ask the map for grid columns, it will throw
2009-05-07 10:09:55 +0200 fs r271634 : #i101623#
2009-05-07 09:53:44 +0200 fs r271631 : #i101622#
2009-05-06 21:55:53 +0200 fs r271615 : #i10000#
2009-05-06 21:10:42 +0200 fs r271611 : #i10000#
2009-05-06 13:11:48 +0200 fs r271583 : #i10000#
2009-05-05 22:29:31 +0200 fs r271559 : proper assertion message
2009-05-05 22:29:03 +0200 fs r271558 : diagnostics
2009-05-05 22:16:16 +0200 fs r271557 : #i10000#
2009-05-05 13:50:32 +0200 fs r271513 : #i10000#
2009-05-05 10:21:50 +0200 fs r271503 : #i10000#
2009-05-05 09:30:26 +0200 fs r271501 : why did those survive the rebase -C step?
2009-05-05 09:18:12 +0200 fs r271500 : #i10000#
2009-05-04 17:08:17 +0200 fs r271475 : CWS-TOOLING: rebase CWS dba32b to trunk@271427 (milestone: DEV300:m47)
2009-05-04 14:51:26 +0200 fs r271456 : line ends
2009-04-30 15:55:27 +0200 fs r271418 : NewURL -> PublicConnectionURL
2009-04-22 21:18:34 +0200 fs r271141 : #i100944#
2009-04-22 09:12:26 +0200 oj r271071 : #i101261# little code change
2009-04-22 09:11:43 +0200 oj r271070 : #i101261# only ask for parameters which aren't set before
2009-04-22 09:11:25 +0200 oj r271069 : #i101261# new grabage container for nodes
2009-04-22 09:11:02 +0200 oj r271068 : #i101261# new grabage container for nodes
2009-04-22 09:10:44 +0200 oj r271067 : #i101261# new grabage container for nodes
2009-04-22 09:10:21 +0200 oj r271066 : #i101261# only ask for parameters which aren't set before
2009-04-22 09:08:24 +0200 oj r271065 : #i101261# only ask for parameters which aren't set before
2009-04-22 09:07:25 +0200 oj r271064 : #i101261# only ask for parameters which aren't set before
2009-04-22 08:49:07 +0200 oj r271062 : #i77501# preview only when needed
2009-04-22 08:45:44 +0200 oj r271061 : #i101261# new prop max rows
2009-04-22 08:44:18 +0200 oj r271060 : #i101261# create dataprovider earlier to avoid the wrong legend in chart
2009-04-22 08:42:48 +0200 oj r271059 : #i101261# handle parameter
2009-04-17 21:00:23 +0200 fs r270954 : #i98350#
2009-04-17 13:54:19 +0200 fs r270942 : #i99565#
2009-04-17 13:51:34 +0200 fs r270940 : #i101153# only localize the (potentially) localizable properties when there really is support at the control model
2009-04-17 11:43:14 +0200 fs r270932 : removed superfluous include
2009-04-17 10:10:15 +0200 fs r270926 : #i10000#
2009-04-17 10:02:36 +0200 fs r270925 : #i10000#
2009-04-17 09:15:13 +0200 fs r270918 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
2009-04-17 09:14:56 +0200 fs r270917 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
2009-04-17 09:13:25 +0200 fs r270915 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
2009-04-17 08:30:34 +0200 fs r270914 : removed unotools/servicehelper.hxx in favour of the (duplicated) comphelper/servicehelper.hxx
2009-04-16 21:05:25 +0200 fs r270903 : #i10000#
2009-04-16 20:43:43 +0200 fs r270902 : #i99056# shape notification outsourced to the SdrObject, this is what all other shape implementations (which only aggregate an SvxShape) have access to, too
2009-04-16 15:57:36 +0200 fs r270891 : #i99056# make SetUnoControlModel virtual
2009-04-16 15:44:02 +0200 fs r270890 : #i99056# let the ScShapeObj notify changes in its Anchor property
2009-04-16 15:36:47 +0200 fs r270889 : #i99056# enable the sheet anchor type property, too
2009-04-16 15:33:45 +0200 fs r270887 : #i99056# shape notification outsourced to the SdrObject, this is what all other shape implementations (which only aggregate an SvxShape) have access to, too
2009-04-15 14:53:13 +0200 fs r270844 : #i10000#
2009-04-15 13:08:29 +0200 fs r270836 : #i10000#
2009-04-15 12:28:14 +0200 fs r270832 : #i10000#
2009-04-15 10:59:14 +0200 fs r270827 : #i10000#
2009-04-15 09:41:08 +0200 oj r270823 : fix issues found with findbugs and pmd
2009-04-14 21:08:04 +0200 fs r270808 : #i99056# implement SheetAnchorType - now the only thing missing to enable it is the proper notification when it is modified
2009-04-14 17:09:00 +0200 fs r270799 : #i99056# implement XServiceInfo for the ScShapeObj
2009-04-14 17:07:55 +0200 fs r270798 : #i99056# implement TextAnchorType, partially implement SheetAnchorType
2009-04-14 15:54:05 +0200 fs r270786 : #i99056# SwXShape: notify changes of the AnchorType property
2009-04-14 15:47:32 +0200 fs r270785 : #i99056# deliver shapepropertynotifier.hxx
2009-04-14 15:46:54 +0200 fs r270784 : diagnostics
2009-04-14 15:08:28 +0200 fs r270781 : #i99056# outsourced the SvxShape's property change notification code into a dedicated class
2009-04-14 14:41:09 +0200 fs r270773 : #i99056# outsourced the SvxShape's property change notification code into a dedicated class
2009-04-14 14:37:23 +0200 fs r270772 : in dtor, remove the properties from the temporary component context
2009-04-14 14:36:34 +0200 fs r270771 : getWeakUnoShape made const
2009-04-14 12:23:08 +0200 oj r270757 : #i101064# add missing braces
2009-04-14 12:21:25 +0200 oj r270756 : #i101065# add braces for gcc 4.3.2
2009-04-14 12:17:45 +0200 oj r270755 : #i101059# add dep for manifest
2009-04-09 12:06:58 +0200 oj r270686 : #i93100# use OptimalSize from control to get height
2009-04-08 09:56:55 +0200 oj r270619 : #i92537# handle calculations in the select columns as well
2009-04-08 09:30:39 +0200 oj r270615 : #i96657# throw error message when the key doesn't have any columns
2009-04-07 12:08:26 +0200 oj r270592 : #i77501# impl preview of the executed report
2009-04-07 12:01:56 +0200 oj r270591 : #i77501# impl preview of the executed report
2009-04-07 11:41:03 +0200 oj r270590 : #i77501# impl preview of the executed report
2009-04-07 11:39:32 +0200 oj r270589 : #i77501# impl preview of the executed report
2009-04-07 11:29:25 +0200 oj r270588 : #i77501# convert dos to unix lineends
2009-04-07 11:28:23 +0200 oj r270587 : #i77501# impl preview of the executed report
2009-04-07 11:16:50 +0200 oj r270586 : #i77501# impl preview of the executed report
2009-04-07 11:16:00 +0200 oj r270585 : #i77501# impl preview of the executed report
2009-04-07 11:15:44 +0200 oj r270584 : #i77501# impl preview of the executed report
2009-04-07 11:15:28 +0200 oj r270583 : #i77501# impl preview of the executed report
2009-04-07 11:15:04 +0200 oj r270582 : #i77501# impl preview of the executed report
2009-04-06 15:38:54 +0200 fs r270559 : merge changes from CWS dba32a herein
2009-04-03 15:56:16 +0200 fs r270494 : ImpSvMEdit::Resize: do multiple iterations, if necessary
2009-04-03 14:35:49 +0200 fs r270487 : #i10000#
2009-04-03 13:17:16 +0200 fs r270476 : #i99056# display geometry information for controls, too
2009-04-03 13:16:37 +0200 fs r270475 : #i99056# better ordering of the geometry properties
2009-04-03 13:16:07 +0200 fs r270473 : #i99056# now that SvxShape supports property change listeners, forward add/remove requests to it
2009-04-03 13:13:18 +0200 fs r270472 : #i99056# at SvxShape, allow for PropertyChangeListeners for Size/Position
2009-04-03 09:29:27 +0200 oj r270456 : #i94571# use correct prop name
2009-04-03 09:14:54 +0200 fs r270451 : merge changes from CWS dba32a herein
2009-04-02 17:00:51 +0200 fs r270424 : better diagnostics
2009-04-02 16:35:19 +0200 fs r270421 : diagnostics
2009-04-02 16:34:50 +0200 fs r270420 : #i99056# mxUnoShape not accessible anymore, use impl_setUnoShape instead
2009-04-02 16:32:48 +0200 fs r270419 : #i99056# make getUnoShape cheaper: keep the pointer to the SvxShape all the time, so there's no need to ask for it in getUnoShape. As a consequence, we will later be able to use the pointer in scenarious where performance (potentially) matters
2009-04-02 16:31:13 +0200 fs r270417 : merge changes from CWS dba32a herein
2009-04-02 16:23:16 +0200 fs r270414 : merge changes from CWS dba32a herein
2009-04-02 14:10:35 +0200 fs r270405 : #i10000#
2009-04-02 14:06:26 +0200 fs r270404 : merge changes from CWS dba32a herein
2009-04-02 14:03:03 +0200 fs r270401 : #i10000#
2009-04-02 13:58:13 +0200 fs r270400 : #i10000#
2009-04-02 12:59:44 +0200 fs r270397 : merge changes from CWS dba32a herein
2009-04-02 12:46:30 +0200 fs r270396 : #i99056# let the form page maintain a mapping between control models and control shapes
2009-04-02 12:44:07 +0200 fs r270395 : merge changes from CWS dba32a herein
2009-04-02 12:42:06 +0200 fs r270394 : merge changes from CWS dba32a herein
2009-04-02 12:35:20 +0200 fs r270393 : #i10000# precompiled header
2009-04-02 12:05:31 +0200 fs r270392 : merge changes from CWS dba32a herein
2009-04-02 12:00:42 +0200 fs r270391 : merge changes from CWS dba32a herein
2009-04-02 11:47:26 +0200 fs r270390 : merge changes from CWS dba32a herein
2009-04-02 11:39:15 +0200 oj r270389 : #i94467# foxpro impl several new types
2009-04-02 11:35:58 +0200 fs r270387 : merge changes from CWS dba32a herein
2009-04-01 14:10:51 +0200 fs r270329 : merge changes from CWS dba32a herein
2009-03-31 17:29:50 +0200 fs r270290 : merge changes from CWS dba32a herein
2009-03-30 14:53:56 +0200 fs r270233 : #i100417# don't set grid column widths to 0, but to <void/>
2009-03-30 12:31:03 +0200 oj r270213 : #i100552# wrong orb used
2009-03-30 12:19:20 +0200 oj r270212 : #i98303# convertlike corrected to sal_Unicode
2009-03-30 11:58:25 +0200 fs r270210 : merge changes from CWS dba32a herein
2009-03-30 11:38:16 +0200 oj r270205 : remove duplicate code from merge
2009-03-30 11:02:27 +0200 fs r270202 : merge changes from CWS dba32a herein
2009-03-30 11:02:19 +0200 fs r270201 : merge changes from CWS dba32a herein
2009-03-30 10:31:26 +0200 oj r270200 : #i100665# only throw exception and do not drop table
2009-03-30 09:36:24 +0200 fs r270195 : assertion text
2009-03-28 20:21:58 +0100 fs r270187 : #ii10000#
2009-03-28 20:19:54 +0100 fs r270186 : removed unused help ids
2009-03-28 20:19:40 +0100 fs r270185 : removed unused help ids
2009-03-28 20:19:10 +0100 fs r270184 : #i100237# +DefaultState/XReset
2009-03-28 00:29:29 +0100 fs r270177 : CWS-TOOLING: rebase CWS dba32b to trunk@270033 (milestone: DEV300:m45)
2009-03-27 22:56:46 +0100 fs r270173 : #i100237# DEFAULT_CHECKED -> DEFAULT_STATE
2009-03-27 22:55:52 +0100 fs r270172 : #i100237# DefaultState property for buttons, enabled only when Toggle=Yes
2009-03-27 22:54:15 +0100 fs r270171 : #i100237# DEFAULT_CHECKED -> DEFAULT_STATE
2009-03-27 22:53:54 +0100 fs r270170 : #i100237# introduce a DefaultState property for buttons, which implies buttongs supporting XReset, which needed some refactoring
2009-03-27 13:31:41 +0100 fs r270152 : ignore output paths
2009-03-27 11:23:44 +0100 fs r270139 : tuned behavior with respect to invalid keys/values
2009-03-27 09:57:14 +0100 fs r270136 : don't allow Double.NaN
2009-03-27 09:56:16 +0100 fs r270135 : talk about Double.NaN
2009-03-26 12:14:30 +0100 fs r270067 : removed unused parameter
2009-03-26 12:14:02 +0100 fs r270066 : removed widening conversion when checking keys
2009-03-26 09:17:34 +0100 fs r270053 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
2009-03-26 09:17:11 +0100 fs r270052 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
2009-03-26 09:16:49 +0100 fs r270051 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
2009-03-25 21:55:20 +0100 fs r270044 : #i100541# properly calculat bNeedScrollBox
2009-03-25 12:56:17 +0100 fs r270019 : renamed the previously introduced error condition
2009-03-25 12:11:48 +0100 fs r270015 : #i100095# when the error messages contain non-trivial details (SQLState/ErrorCode), then always display the 'Details' button
2009-03-25 12:10:05 +0100 fs r270012 : renamed the previously introduced error condition
2009-03-25 12:01:04 +0100 fs r270011 : #i100095# when no address book (or respective profile) can be found, then use a dedicated ErrorCondition
2009-03-25 10:29:07 +0100 fs r270003 : add missing localization
2009-03-25 10:23:12 +0100 fs r270001 : in preparation of #i1000095#:
rework the error handling, allow using css.sdb.ErrorCondition values, plus
allow propagating the nsresult
2009-03-25 10:21:55 +0100 fs r270000 : in preparation of #i1000095#:
rework the error handling, allow using css.sdb.ErrorCondition values, plus
allow propagating the nsresult
2009-03-20 23:05:38 +0100 fs r269829 : XMap::getSize removed
2009-03-20 23:05:19 +0100 fs r269828 : changes as suggested by sb
2009-03-20 23:04:56 +0100 fs r269827 : enhanced documentation
2009-03-20 15:31:40 +0100 fs r269815 : changes as suggested by sb
2009-03-20 13:23:52 +0100 oj r269804 : #i92538# correct the zorder that fixedtext is infront of control
2009-03-20 12:59:38 +0100 oj r269801 : #i94571# paraadjust now supports BLOCK
2009-03-20 12:58:11 +0100 oj r269800 : #i94571# export style with data style
2009-03-20 12:57:05 +0100 oj r269799 : #i94571# text align is now paraadjust
2009-03-20 12:37:02 +0100 fs r269797 : enum keys only accepted if they have the exact type, not if they have *any* enum type
2009-03-20 12:28:31 +0100 fs r269794 : some changes requested by sb
2009-03-20 08:52:47 +0100 fs r269780 : doc
2009-03-20 07:37:31 +0100 oj r269779 : #i99913# only notifiy when values are different
2009-03-20 07:36:58 +0100 oj r269778 : #i99913# add undoenv as listener at the dataprovider
2009-03-19 22:52:52 +0100 fs r269771 : added comment
2009-03-19 22:40:06 +0100 fs r269770 : +testEnumeration
2009-03-19 22:39:41 +0100 fs r269769 : implemented enumeration, getKeySet, and getValues. Should be finished now.
2009-03-19 14:01:01 +0100 oj r269743 : #i99913# reset the modified state when selecting an object
2009-03-19 12:19:54 +0100 lla r269739 : #i72390# cleanups
2009-03-19 09:25:27 +0100 fs r269727 : #i10000#
2009-03-18 23:37:02 +0100 fs r269708 : extended checks for value type acceptance
2009-03-18 23:36:41 +0100 fs r269707 : fixed value type checks
2009-03-18 14:59:56 +0100 fs r269678 : initial complex test case for the new css.container.Map implementation
2009-03-18 14:59:24 +0100 fs r269677 : verifyExpectedException moved to base class (in complexlib), and renamed to assureException for consistency
2009-03-18 14:58:35 +0100 fs r269676 : removed unused imports
2009-03-18 14:58:03 +0100 fs r269675 : first implementation of the new css.container.Map service (not completed, yet)
2009-03-18 14:57:17 +0100 fs r269674 : base class for UNO components, freeing you from some repeating work
2009-03-18 14:55:53 +0100 fs r269672 : +assureException: call a given method with given parameters on a given object, ensure that a given exception is thrown by the method implementation
2009-03-18 14:54:58 +0100 fs r269671 : +getComponentContext
2009-03-18 14:54:00 +0100 fs r269670 : isEmpty returns a boolean, not a long
2009-03-18 14:14:43 +0100 oj r269663 : #i99743# now text also supports null
2009-03-18 13:54:14 +0100 oj r269660 : #i99223# remove check for 2 params
2009-03-18 13:33:35 +0100 oj r269659 : #i99060# replace text::ParagraphVertAlign with style::VerticalAlignment
2009-03-18 13:32:18 +0100 oj r269658 : #i99060# don't set void property when void isn't allowed
2009-03-18 13:31:11 +0100 oj r269657 : #i99060# handle vertical alignment
2009-03-18 13:28:28 +0100 oj r269656 : #i99060# remove unused elements from sytle
2009-03-18 09:35:42 +0100 lla r269639 : #i72390# cleanups
2009-03-18 09:31:20 +0100 lla r269638 : #i72390# add ButtonList
2009-03-18 09:30:46 +0100 lla r269637 : #i72390# renamed interface
2009-03-18 09:30:15 +0100 lla r269636 : #i72390# use ButtonList instead of ImageList
2009-03-18 09:29:05 +0100 lla r269635 : #i72390# new ButtonList, cleanups
2009-03-18 09:26:34 +0100 lla r269634 : #i72390# cleanups
2009-03-17 12:21:20 +0100 oj r269590 : #i99222# remove assertion
2009-03-17 12:17:22 +0100 oj r269589 : #i98605# impl scale mode
2009-03-17 12:10:42 +0100 oj r269588 : #i98605# impl scale mode
2009-03-17 11:40:15 +0100 oj r269584 : #i96944# doesn't create equation for shapes
2009-03-17 11:33:16 +0100 oj r269583 : #i96423# switch calc from float to long
2009-03-16 15:19:18 +0100 fs r269550 : #i41930# enable zoom for embedded/outplace documents
2009-03-16 14:25:54 +0100 oj r269542 : #i93734# remove ContextSensitive
2009-03-16 14:21:58 +0100 oj r269541 : #i99274# page header before group header
2009-03-16 14:18:23 +0100 oj r269539 : #i99110# fix value type
2009-03-16 14:14:16 +0100 fs r269537 : line ends
2009-03-16 14:11:06 +0100 fs r269535 : line ends
2009-03-16 14:08:34 +0100 fs r269534 : #i100087# (provided my np): allow for polymorphic types with more than one parameter
2009-03-16 12:30:31 +0100 oj r269521 : compile error
2009-03-16 12:19:12 +0100 oj r269519 : compile error
2009-03-16 10:39:28 +0100 oj r269511 : compile error under linux with swap
2009-03-13 10:33:04 +0100 oj r269462 : CWS-TOOLING: rebase CWS dba32b to trunk@269297 (milestone: DEV300:m43)
2009-03-12 14:37:25 +0100 fs r269416 : interface SequenceOutputStreamTest is unneeded, and pollutes the namespace here :)
2009-03-12 14:35:07 +0100 fs r269414 : not needed
2009-03-12 14:34:15 +0100 fs r269413 : preparation for multiple tests in this module
2009-03-12 14:33:02 +0100 fs r269412 : ShowTargets was moved from module integration.forms to module complexlib
2009-03-12 14:32:48 +0100 fs r269411 : helper class for projects containing multiple complex test cases (and following a certain structure)
2009-03-12 14:00:14 +0100 fs r269407 : proper module after the move
2009-03-12 13:59:10 +0100 fs r269406 : superseded by ../makefile.mk
2009-03-12 13:47:38 +0100 fs r269403 : not needed anymore
2009-03-12 13:45:46 +0100 fs r269402 : moved, in preparation of adding more test cases here, with a common infrastructure
2009-03-12 13:45:07 +0100 fs r269401 : moved from ../
2009-03-12 13:43:59 +0100 fs r269400 : moved to ./comphelper, in preparation of adding more test cases here, with a common infrastructure
2009-03-12 13:29:47 +0100 oj r269396 : #i99914# set parent on dataprovider
2009-03-12 13:10:35 +0100 oj r269393 : #i99832# check thrown exception and show error
2009-03-12 13:08:10 +0100 fs r269392 : reorganizing tests
2009-03-12 12:52:55 +0100 oj r269390 : #i99118# convert formatkey in numberformat
2009-03-12 12:34:53 +0100 fs r269388 : new API tests
2009-03-12 12:29:05 +0100 fs r269386 : Map not yet committed
2009-03-12 12:28:36 +0100 fs r269385 : oops, forgot the SequenceInputStream during the previous refactoring
2009-03-12 12:12:39 +0100 oj r269384 : #i99104# set HasCategories prop
2009-03-12 12:12:08 +0100 oj r269383 : #i99104# check HasCategories even for internal dataprovider
2009-03-12 12:10:40 +0100 oj r269382 : #i99104# set HasCategories prop
2009-03-12 10:51:49 +0100 fs r269373 : #i10000# exception specifications
2009-03-12 10:49:18 +0100 fs r269372 : #i10000# exception specifications
2009-03-12 10:44:02 +0100 fs r269371 : #i10000# exception specifications
2009-03-12 10:30:55 +0100 fs r269368 : refactored the UNO service registration in this module, using the helper classes provided by comphelper itself, so you have less effort when extending the list of to-be-registered components
2009-03-12 10:30:37 +0100 fs r269367 : module-local includes
2009-03-12 07:05:54 +0100 oj r269357 : #i99104# database dataprovider doesn't need dataranges and diagramdata
2009-03-11 10:58:28 +0100 oj r269306 : #i99911# check if name of the report is a valid file name
2009-03-11 10:03:23 +0100 oj r269299 : #i99666# the report is new when the HierarchicalDocumentName is empty
2009-03-10 11:32:45 +0100 oj r269258 : #i99221# use fallback for language
2009-03-10 10:48:40 +0100 oj r269255 : #i99433# now use OStringBuffer
2009-03-10 10:36:21 +0100 fs r269252 : initial version of (X)Map
2009-03-10 09:52:23 +0100 oj r269246 : #i99433# now use OStringBuffer
2009-03-10 08:56:13 +0100 oj r269240 : #i99655# patch applied
2009-03-09 07:35:33 +0100 lla r269058 : #i10000# wrong variable assignment fixed
2009-03-06 17:20:40 +0100 fs r269030 : some explicit defaults
2009-03-06 17:20:30 +0100 fs r269029 : #i98600#
2009-03-06 14:40:34 +0100 fs r269009 : #i87692# during reload, prevent the document being modified just because of some control content changes ...
2009-03-06 12:52:20 +0100 lla r268997 : #i10000# ambigous problem with FontWeight fixed
2009-03-06 11:39:32 +0100 fs r268989 : #i10000# (approved by pl): use --without-t1-library configure option
2009-03-06 10:55:43 +0100 fs r268986 : #i99953# depends on xmlscript module now
2009-03-06 10:54:04 +0100 fs r268985 : #i99953# also adjust the event names found in dialogs embedded in the forms
2009-03-06 09:53:41 +0100 fs r268977 : #i10000#
2009-03-06 09:30:41 +0100 lla r268973 : #i10000# merge problems
2009-03-05 17:52:34 +0100 fs r268932 : #i98593# for sub components which are actually controlled by a DocumentDefinition (aka XComponentSupplier aka XCommandProcessor), close them by executing the 'close' command, not by suspending/closing the controller (which cannot be intercepted)
2009-03-05 11:41:56 +0100 fs r268889 : default the drop down line count for list/combo boxes to 20
2009-03-05 11:39:10 +0100 fs r268887 : do not display empty error messages
2009-03-02 10:13:57 +0100 lla r268639 : #i91541# CWS rebase m41 to m42
2009-03-02 09:06:27 +0100 lla r268635 : #i10000# add ';' to strings
2009-02-26 11:18:00 +0100 fs r268492 : reportdesign depends on REPORTBUILDER, not REPORTDESIGN
2009-02-26 10:11:38 +0100 lla r268489 : CWS-TOOLING: rebase CWS dba32b to trunk@268395 (milestone: DEV300:m42)
2009-02-26 09:04:11 +0100 lla r268488 : CWS-TOOLING: rebase CWS dba32b to trunk@268395 (milestone: DEV300:m42)
2009-02-24 12:09:13 +0100 lla r268392 : #i91541# #i91542# cleanups
2009-02-24 08:08:06 +0100 lla r268382 : merge all dba32a changes into dba32b
2009-02-24 07:14:55 +0100 lla r268381 : merge all dba32a changes into dba32b
2009-02-23 21:44:28 +0100 fs r268377 : oops ... don't tamper with m_aListSourceValues at the end of loadData
2009-02-23 20:57:05 +0100 fs r268376 : #i98162# don't hold the values as strings, but as ORowSetValue, this way preserving their type, and being agnostic to different result/rowset implementations doing different to-string-conversations
2009-02-23 20:55:44 +0100 fs r268375 : getObject: throwFunctionNotSupportedException, instead of silently returning NULL
2009-02-23 20:55:20 +0100 fs r268374 : #i98162# some more supported types
2009-02-23 20:54:43 +0100 fs r268373 : #i98162# +operator !=
2009-02-20 09:35:39 +0100 fs r268306 : #i99422# for a font, display the font name, the style, and the size
2009-02-20 09:33:45 +0100 fs r268305 : #i99422# in the property browser, FONT supersedes CHARFONTNAME: the aggregated FormComponentHandler displays them more nicely now
2009-02-19 16:12:06 +0100 fs r268293 : #i99372# recognize DataType::FLOAT as numeric
2009-02-19 15:43:12 +0100 fs r268291 : #i99415#
2009-02-19 15:40:15 +0100 fs r268290 : #i99242# lcl_firstFocussableControl: take disabled controls into account
2009-02-19 15:34:36 +0100 fs r268289 : #i99396# properly decode the base name of the URL when using it as title
2009-02-19 15:19:05 +0100 fs r268287 : #i98247#
2009-06-05 09:47:55 +00:00
ImplCheckLocalize ( sText ) ;
2004-05-07 15:17:46 +00:00
xTextComponent - > setText ( sText ) ;
2002-09-05 07:54:42 +00:00
bDone = sal_True ;
}
}
if ( ! bDone )
UnoControlBase : : ImplSetPeerProperty ( rPropName , rVal ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-05-07 15:17:46 +00:00
lang : : EventObject aEvt ( * this ) ;
2000-09-18 16:07:07 +00:00
maTextListeners . disposeAndClear ( aEvt ) ;
UnoControl : : dispose ( ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
UnoControl : : createPeer ( rxToolkit , rParentPeer ) ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2004-05-07 15:17:46 +00:00
if ( xText . is ( ) )
{
2000-09-18 16:07:07 +00:00
xText - > addTextListener ( this ) ;
2001-10-11 14:27:26 +00:00
if ( mbSetMaxTextLenInPeer )
xText - > setMaxTextLen ( mnMaxTextLen ) ;
if ( mbSetTextInPeer )
xText - > setText ( maText ) ;
2004-05-07 15:17:46 +00:00
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : textChanged ( const awt : : TextEvent & e ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
2004-05-07 15:17:46 +00:00
if ( mbHasTextProperty )
2001-10-11 14:27:26 +00:00
{
uno : : Any aAny ;
aAny < < = xText - > getText ( ) ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TEXT ) , aAny , sal_False ) ;
}
else
{
maText = xText - > getText ( ) ;
}
2000-09-18 16:07:07 +00:00
if ( maTextListeners . getLength ( ) )
maTextListeners . textChanged ( e ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : addTextListener ( const uno : : Reference < awt : : XTextListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maTextListeners . addInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : removeTextListener ( const uno : : Reference < awt : : XTextListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maTextListeners . removeInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : setText ( const : : rtl : : OUString & aText ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-05-07 15:17:46 +00:00
if ( mbHasTextProperty )
2001-10-11 14:27:26 +00:00
{
uno : : Any aAny ;
aAny < < = aText ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TEXT ) , aAny , sal_True ) ;
}
else
{
maText = aText ;
2004-05-07 15:17:46 +00:00
mbSetTextInPeer = sal_True ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2004-05-07 15:17:46 +00:00
if ( xText . is ( ) )
2001-10-11 14:27:26 +00:00
xText - > setText ( maText ) ;
}
2000-09-18 16:07:07 +00:00
2001-08-10 11:27:24 +00:00
// Setting the property to the VCLXWindow doesn't call textChanged
if ( maTextListeners . getLength ( ) )
2000-09-18 16:07:07 +00:00
{
2004-05-07 15:17:46 +00:00
awt : : TextEvent aEvent ;
aEvent . Source = * this ;
2001-08-10 11:27:24 +00:00
maTextListeners . textChanged ( aEvent ) ;
2000-09-18 16:07:07 +00:00
}
}
2004-05-07 15:17:46 +00:00
namespace
{
static void lcl_normalize ( awt : : Selection & _rSel )
{
if ( _rSel . Min > _rSel . Max )
: : std : : swap ( _rSel . Min , _rSel . Max ) ;
}
2006-06-19 22:05:22 +00:00
/*
2004-05-07 15:17:46 +00:00
static bool lcl_intersect ( const awt : : Selection & _rLHS , const awt : : Selection & _rRHS )
{
OSL_PRECOND ( _rLHS . Min < = _rLHS . Max , " lcl_intersect: LHS to be normalized! " ) ;
OSL_PRECOND ( _rRHS . Min < = _rRHS . Max , " lcl_intersect: RHS to be normalized! " ) ;
return ! ( ( _rLHS . Max < _rRHS . Min ) | | ( _rLHS . Min > _rRHS . Max ) ) ;
}
2006-06-19 22:05:22 +00:00
*/
2004-05-07 15:17:46 +00:00
}
2001-08-10 11:27:24 +00:00
void UnoEditControl : : insertText ( const awt : : Selection & rSel , const : : rtl : : OUString & rNewText ) throw ( uno : : RuntimeException )
{
2004-05-07 15:17:46 +00:00
// normalize the selection - OUString::replaceAt has a strange behaviour if the min is greater than the max
awt : : Selection aSelection ( rSel ) ;
lcl_normalize ( aSelection ) ;
// preserve the selection resp. cursor position
awt : : Selection aNewSelection ( getSelection ( ) ) ;
# ifdef ALSO_PRESERVE_COMPLETE_SELECTION
// (not sure - looks uglier ...)
sal_Int32 nDeletedCharacters = ( aSelection . Max - aSelection . Min ) - rNewText . getLength ( ) ;
if ( aNewSelection . Min > aSelection . Min )
aNewSelection . Min - = nDeletedCharacters ;
if ( aNewSelection . Max > aSelection . Max )
aNewSelection . Max - = nDeletedCharacters ;
# else
aNewSelection . Max = : : std : : min ( aNewSelection . Min , aNewSelection . Max ) + rNewText . getLength ( ) ;
aNewSelection . Min = aNewSelection . Max ;
# endif
2001-08-10 11:27:24 +00:00
: : rtl : : OUString aOldText = getText ( ) ;
2004-05-07 15:17:46 +00:00
: : rtl : : OUString aNewText = aOldText . replaceAt ( aSelection . Min , aSelection . Max - aSelection . Min , rNewText ) ;
2001-08-10 11:27:24 +00:00
setText ( aNewText ) ;
2004-05-07 15:17:46 +00:00
setSelection ( aNewSelection ) ;
2001-08-10 11:27:24 +00:00
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoEditControl : : getText ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-10-11 14:27:26 +00:00
: : rtl : : OUString aText = maText ;
2004-05-07 15:17:46 +00:00
if ( mbHasTextProperty )
2000-09-18 16:07:07 +00:00
aText = ImplGetPropertyValue_UString ( BASEPROPERTY_TEXT ) ;
2004-05-07 15:17:46 +00:00
else
{
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
if ( xText . is ( ) )
aText = xText - > getText ( ) ;
}
2000-09-18 16:07:07 +00:00
return aText ;
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoEditControl : : getSelectedText ( void ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-05-07 15:17:46 +00:00
: : rtl : : OUString sSelected ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2004-05-07 15:17:46 +00:00
if ( xText . is ( ) )
sSelected = xText - > getSelectedText ( ) ;
return sSelected ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : setSelection ( const awt : : Selection & aSelection ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2004-05-07 15:17:46 +00:00
if ( xText . is ( ) )
2000-09-18 16:07:07 +00:00
xText - > setSelection ( aSelection ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Selection UnoEditControl : : getSelection ( void ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
awt : : Selection aSel ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2004-05-07 15:17:46 +00:00
if ( xText . is ( ) )
2000-09-18 16:07:07 +00:00
aSel = xText - > getSelection ( ) ;
return aSel ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoEditControl : : isEditable ( void ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ! ImplGetPropertyValue_BOOL ( BASEPROPERTY_READONLY ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : setEditable ( sal_Bool bEditable ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Bool ) ! bEditable ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_READONLY ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoEditControl : : getMaxTextLen ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-10-11 14:27:26 +00:00
sal_Int16 nMaxLen = mnMaxTextLen ;
2004-05-07 15:17:46 +00:00
if ( ImplHasProperty ( BASEPROPERTY_MAXTEXTLEN ) )
2001-10-11 14:27:26 +00:00
nMaxLen = ImplGetPropertyValue_INT16 ( BASEPROPERTY_MAXTEXTLEN ) ;
return nMaxLen ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : setMaxTextLen ( sal_Int16 nLen ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-10-11 14:27:26 +00:00
if ( ImplHasProperty ( BASEPROPERTY_MAXTEXTLEN ) )
{
uno : : Any aAny ;
aAny < < = ( sal_Int16 ) nLen ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_MAXTEXTLEN ) , aAny , sal_True ) ;
}
else
{
mnMaxTextLen = nLen ;
2004-05-07 15:17:46 +00:00
mbSetMaxTextLenInPeer = sal_True ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTextComponent > xText ( getPeer ( ) , uno : : UNO_QUERY ) ;
2004-05-07 15:17:46 +00:00
if ( xText . is ( ) )
2001-10-11 14:27:26 +00:00
xText - > setMaxTextLen ( mnMaxTextLen ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoEditControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoEditControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoEditControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoEditControl : : getMinimumSize ( sal_Int16 nCols , sal_Int16 nLines ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( nCols , nLines ) ;
}
2001-01-24 14:00:58 +00:00
void UnoEditControl : : getColumnsAndLines ( sal_Int16 & nCols , sal_Int16 & nLines ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
Impl_getColumnsAndLines ( nCols , nLines ) ;
}
// ----------------------------------------------------
// class UnoControlFileControlModel
// ----------------------------------------------------
UnoControlFileControlModel : : UnoControlFileControlModel ( )
{
ImplRegisterProperty ( BASEPROPERTY_BACKGROUNDCOLOR ) ;
ImplRegisterProperty ( BASEPROPERTY_BORDER ) ;
2004-07-05 14:57:14 +00:00
ImplRegisterProperty ( BASEPROPERTY_BORDERCOLOR ) ;
2000-09-18 16:07:07 +00:00
ImplRegisterProperty ( BASEPROPERTY_DEFAULTCONTROL ) ;
ImplRegisterProperty ( BASEPROPERTY_ENABLED ) ;
ImplRegisterProperty ( BASEPROPERTY_FONTDESCRIPTOR ) ;
2001-03-23 12:31:49 +00:00
ImplRegisterProperty ( BASEPROPERTY_HELPTEXT ) ;
2000-09-18 16:07:07 +00:00
ImplRegisterProperty ( BASEPROPERTY_HELPURL ) ;
ImplRegisterProperty ( BASEPROPERTY_PRINTABLE ) ;
2002-07-09 14:28:08 +00:00
ImplRegisterProperty ( BASEPROPERTY_READONLY ) ;
2000-09-18 16:07:07 +00:00
ImplRegisterProperty ( BASEPROPERTY_TABSTOP ) ;
ImplRegisterProperty ( BASEPROPERTY_TEXT ) ;
2008-12-16 13:30:53 +00:00
ImplRegisterProperty ( BASEPROPERTY_WRITING_MODE ) ;
ImplRegisterProperty ( BASEPROPERTY_CONTEXT_WRITING_MODE ) ;
2004-07-05 14:57:14 +00:00
ImplRegisterProperty ( BASEPROPERTY_HIDEINACTIVESELECTION ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlFileControlModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFileControlModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlFileControlModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFileControl ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlFileControlModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlFileControlModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoFileControl
// ----------------------------------------------------
UnoFileControl : : UnoFileControl ( )
{
}
: : rtl : : OUString UnoFileControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " filecontrol " ) ;
}
2004-07-05 14:57:14 +00:00
// ----------------------------------------------------
// class ImageProducerControlModel
// ----------------------------------------------------
uno : : Any SAL_CALL ImageProducerControlModel : : queryInterface ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
return UnoControlModel : : queryInterface ( rType ) ;
}
uno : : Any SAL_CALL ImageProducerControlModel : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
uno : : Any aRet = : : cppu : : queryInterface ( rType , SAL_STATIC_CAST ( awt : : XImageProducer * , this ) ) ;
return ( aRet . hasValue ( ) ? aRet : UnoControlModel : : queryAggregation ( rType ) ) ;
}
void SAL_CALL ImageProducerControlModel : : acquire ( ) throw ( )
{
UnoControlModel : : acquire ( ) ;
}
void SAL_CALL ImageProducerControlModel : : release ( ) throw ( )
{
UnoControlModel : : release ( ) ;
}
2006-10-18 12:15:32 +00:00
uno : : Any ImageProducerControlModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
{
if ( nPropId = = BASEPROPERTY_GRAPHIC )
return uno : : makeAny ( uno : : Reference < graphic : : XGraphic > ( ) ) ;
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
2008-12-01 12:31:27 +00:00
uno : : Reference < graphic : : XGraphic > ImageProducerControlModel : : getGraphicFromURL_nothrow ( const : : rtl : : OUString & _rURL )
2006-10-18 12:15:32 +00:00
{
uno : : Reference < graphic : : XGraphic > xGraphic ;
2008-12-01 12:31:27 +00:00
if ( ( _rURL . compareToAscii ( UNO_NAME_GRAPHOBJ_URLPREFIX , RTL_CONSTASCII_LENGTH ( UNO_NAME_GRAPHOBJ_URLPREFIX ) ) = = 0 ) )
{
// graphic manager uniqueid
rtl : : OUString sID = _rURL . copy ( sizeof ( UNO_NAME_GRAPHOBJ_URLPREFIX ) - 1 ) ;
// get the DefaultContext
: : comphelper : : ComponentContext aContext ( : : comphelper : : getProcessServiceFactory ( ) ) ;
mxGrfObj = graphic : : GraphicObject : : createWithId ( aContext . getUNOContext ( ) , sID ) ;
}
else // linked
mxGrfObj = NULL ; // release the GraphicObject
2006-10-18 12:15:32 +00:00
if ( ! _rURL . getLength ( ) )
return xGraphic ;
try
{
: : comphelper : : ComponentContext aContext ( : : comphelper : : getProcessServiceFactory ( ) ) ;
uno : : Reference < graphic : : XGraphicProvider > xProvider ;
if ( aContext . createComponent ( " com.sun.star.graphic.GraphicProvider " , xProvider ) )
{
uno : : Sequence < beans : : PropertyValue > aMediaProperties ( 1 ) ;
aMediaProperties [ 0 ] . Name = : : rtl : : OUString ( RTL_CONSTASCII_USTRINGPARAM ( " URL " ) ) ;
aMediaProperties [ 0 ] . Value < < = _rURL ;
xGraphic = xProvider - > queryGraphic ( aMediaProperties ) ;
}
}
catch ( const Exception & )
{
DBG_UNHANDLED_EXCEPTION ( ) ;
}
return xGraphic ;
}
2004-07-05 14:57:14 +00:00
void SAL_CALL ImageProducerControlModel : : setFastPropertyValue_NoBroadcast ( sal_Int32 nHandle , const : : com : : sun : : star : : uno : : Any & rValue ) throw ( : : com : : sun : : star : : uno : : Exception )
{
UnoControlModel : : setFastPropertyValue_NoBroadcast ( nHandle , rValue ) ;
2006-10-18 12:15:32 +00:00
// - ImageAlign and ImagePosition need to correspond to each other
// - Graphic and ImageURL need to correspond to each other
2004-07-05 14:57:14 +00:00
try
{
switch ( nHandle )
{
2006-10-18 12:15:32 +00:00
case BASEPROPERTY_IMAGEURL :
if ( ! mbAdjustingGraphic & & ImplHasProperty ( BASEPROPERTY_GRAPHIC ) )
{
mbAdjustingGraphic = true ;
: : rtl : : OUString sImageURL ;
OSL_VERIFY ( rValue > > = sImageURL ) ;
2008-12-01 12:31:27 +00:00
setPropertyValue ( GetPropertyName ( BASEPROPERTY_GRAPHIC ) , uno : : makeAny ( getGraphicFromURL_nothrow ( sImageURL ) ) ) ;
2006-10-18 12:15:32 +00:00
mbAdjustingGraphic = false ;
}
break ;
case BASEPROPERTY_GRAPHIC :
if ( ! mbAdjustingGraphic & & ImplHasProperty ( BASEPROPERTY_IMAGEURL ) )
{
mbAdjustingGraphic = true ;
setPropertyValue ( GetPropertyName ( BASEPROPERTY_IMAGEURL ) , uno : : makeAny ( : : rtl : : OUString ( ) ) ) ;
mbAdjustingGraphic = false ;
}
break ;
2004-07-05 14:57:14 +00:00
case BASEPROPERTY_IMAGEALIGN :
if ( ! mbAdjustingImagePosition & & ImplHasProperty ( BASEPROPERTY_IMAGEPOSITION ) )
{
2006-10-18 12:15:32 +00:00
mbAdjustingImagePosition = true ;
2004-07-05 14:57:14 +00:00
sal_Int16 nUNOValue = 0 ;
OSL_VERIFY ( rValue > > = nUNOValue ) ;
setPropertyValue ( GetPropertyName ( BASEPROPERTY_IMAGEPOSITION ) , uno : : makeAny ( getExtendedImagePosition ( nUNOValue ) ) ) ;
2006-10-18 12:15:32 +00:00
mbAdjustingImagePosition = false ;
2004-07-05 14:57:14 +00:00
}
break ;
case BASEPROPERTY_IMAGEPOSITION :
if ( ! mbAdjustingImagePosition & & ImplHasProperty ( BASEPROPERTY_IMAGEALIGN ) )
{
2006-10-18 12:15:32 +00:00
mbAdjustingImagePosition = true ;
2004-07-05 14:57:14 +00:00
sal_Int16 nUNOValue = 0 ;
OSL_VERIFY ( rValue > > = nUNOValue ) ;
setPropertyValue ( GetPropertyName ( BASEPROPERTY_IMAGEALIGN ) , uno : : makeAny ( getCompatibleImageAlign ( translateImagePosition ( nUNOValue ) ) ) ) ;
2006-10-18 12:15:32 +00:00
mbAdjustingImagePosition = false ;
2004-07-05 14:57:14 +00:00
}
break ;
}
}
catch ( const : : com : : sun : : star : : uno : : Exception & )
{
OSL_ENSURE ( sal_False , " ImageProducerControlModel::setFastPropertyValue_NoBroadcast: caught an exception while aligning the ImagePosition/ImageAlign properties! " ) ;
mbAdjustingImagePosition = sal_False ;
}
}
void ImageProducerControlModel : : addConsumer ( const : : com : : sun : : star : : uno : : Reference < : : com : : sun : : star : : awt : : XImageConsumer > & xConsumer ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
maListeners . push_back ( xConsumer ) ;
}
void ImageProducerControlModel : : removeConsumer ( const : : com : : sun : : star : : uno : : Reference < : : com : : sun : : star : : awt : : XImageConsumer > & xConsumer ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
maListeners . remove ( xConsumer ) ;
}
void ImageProducerControlModel : : startProduction ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
uno : : Sequence < uno : : Any > aArgs ( 1 ) ;
aArgs . getArray ( ) [ 0 ] = getPropertyValue ( GetPropertyName ( BASEPROPERTY_IMAGEURL ) ) ;
uno : : Reference < lang : : XMultiServiceFactory > xMSF = : : comphelper : : getProcessServiceFactory ( ) ;
uno : : Reference < awt : : XImageProducer > xImageProducer ( xMSF - > createInstanceWithArguments ( : : rtl : : OUString : : createFromAscii ( " com.sun.star.awt.ImageProducer " ) , aArgs ) , uno : : UNO_QUERY ) ;
if ( xImageProducer . is ( ) )
{
std : : list < uno : : Reference < awt : : XImageConsumer > > : : iterator aIter ( maListeners . begin ( ) ) ;
while ( aIter ! = maListeners . end ( ) )
{
xImageProducer - > addConsumer ( * aIter ) ;
aIter + + ;
}
xImageProducer - > startProduction ( ) ;
}
}
// ----------------------------------------------------
// class ImageConsumerControl
// ----------------------------------------------------
sal_Bool SAL_CALL ImageConsumerControl : : setModel ( const uno : : Reference < awt : : XControlModel > & _rModel ) throw ( uno : : RuntimeException )
{
// remove the peer as image consumer from the model
lcl_knitImageComponents ( getModel ( ) , getPeer ( ) , false ) ;
sal_Bool bReturn = UnoControlBase : : setModel ( _rModel ) ;
// add the peer as image consumer to the model
lcl_knitImageComponents ( getModel ( ) , getPeer ( ) , true ) ;
return bReturn ;
}
void SAL_CALL ImageConsumerControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
// remove the peer as image consumer from the model
lcl_knitImageComponents ( getModel ( ) , getPeer ( ) , false ) ;
UnoControlBase : : createPeer ( rxToolkit , rParentPeer ) ;
// add the peer as image consumer to the model
lcl_knitImageComponents ( getModel ( ) , getPeer ( ) , true ) ;
}
2006-11-14 11:29:01 +00:00
void SAL_CALL ImageConsumerControl : : dispose ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
// remove the peer as image consumer from the model
lcl_knitImageComponents ( getModel ( ) , getPeer ( ) , false ) ;
UnoControlBase : : dispose ( ) ;
}
2004-07-05 14:57:14 +00:00
void ImageConsumerControl : : ImplSetPeerProperty ( const : : rtl : : OUString & rPropName , const uno : : Any & rVal )
{
sal_uInt16 nType = GetPropertyId ( rPropName ) ;
if ( nType = = BASEPROPERTY_IMAGEURL )
{
uno : : Reference < awt : : XImageProducer > xImgProd ( getModel ( ) , uno : : UNO_QUERY ) ;
uno : : Reference < awt : : XImageConsumer > xImgCons ( getPeer ( ) , uno : : UNO_QUERY ) ;
if ( xImgProd . is ( ) & & xImgCons . is ( ) )
xImgProd - > startProduction ( ) ;
}
else
UnoControlBase : : ImplSetPeerProperty ( rPropName , rVal ) ;
}
2000-09-18 16:07:07 +00:00
// ----------------------------------------------------
// class UnoControlButtonModel
// ----------------------------------------------------
UnoControlButtonModel : : UnoControlButtonModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXButton ) ;
2000-09-18 16:07:07 +00:00
2004-07-05 14:57:14 +00:00
osl_incrementInterlockedCount ( & m_refCount ) ;
{
2005-03-18 13:11:11 +00:00
setFastPropertyValue_NoBroadcast ( BASEPROPERTY_IMAGEPOSITION , ImplGetDefaultValue ( BASEPROPERTY_IMAGEPOSITION ) ) ;
2004-07-05 14:57:14 +00:00
// this ensures that our ImagePosition is consistent with our ImageAlign property (since both
// defaults are not per se consistent), since both are coupled in setFastPropertyValue_NoBroadcast
}
osl_decrementInterlockedCount ( & m_refCount ) ;
2001-04-04 15:06:33 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlButtonModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlButtonModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlButtonModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
switch ( nPropId )
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
case BASEPROPERTY_DEFAULTCONTROL :
return uno : : makeAny ( : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlButton ) ) ;
case BASEPROPERTY_TOGGLE :
return uno : : makeAny ( ( sal_Bool ) sal_False ) ;
case BASEPROPERTY_ALIGN :
return uno : : makeAny ( ( sal_Int16 ) PROPERTY_ALIGN_CENTER ) ;
case BASEPROPERTY_FOCUSONCLICK :
return uno : : makeAny ( ( sal_Bool ) sal_True ) ;
2000-09-18 16:07:07 +00:00
}
2004-07-05 14:57:14 +00:00
return ImageProducerControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
2000-09-18 16:07:07 +00:00
: : cppu : : IPropertyArrayHelper & UnoControlButtonModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlButtonModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoButtonControl
// ----------------------------------------------------
UnoButtonControl : : UnoButtonControl ( )
: maActionListeners ( * this )
2006-08-28 13:56:47 +00:00
, maItemListeners ( * this )
2000-09-18 16:07:07 +00:00
{
maComponentInfos . nWidth = 50 ;
maComponentInfos . nHeight = 14 ;
}
: : rtl : : OUString UnoButtonControl : : GetComponentServiceName ( )
{
2001-10-17 07:47:10 +00:00
: : rtl : : OUString aName ( : : rtl : : OUString : : createFromAscii ( " pushbutton " ) ) ;
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_PUSHBUTTONTYPE ) ) ;
2006-08-29 09:58:09 +00:00
sal_Int16 n = sal_Int16 ( ) ;
2001-10-17 07:47:10 +00:00
if ( ( aVal > > = n ) & & n )
{
// Use PushButtonType later when available...
switch ( n )
{
case 1 /*PushButtonType::OK*/ : aName = : : rtl : : OUString : : createFromAscii ( " okbutton " ) ;
break ;
case 2 /*PushButtonType::CANCEL*/ : aName = : : rtl : : OUString : : createFromAscii ( " cancelbutton " ) ;
break ;
case 3 /*PushButtonType::HELP*/ : aName = : : rtl : : OUString : : createFromAscii ( " helpbutton " ) ;
break ;
default :
{
DBG_ERROR ( " Unknown Button Type! " ) ;
}
}
}
return aName ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoButtonControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
lang : : EventObject aEvt ;
2000-09-18 16:07:07 +00:00
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maActionListeners . disposeAndClear ( aEvt ) ;
2006-08-28 13:56:47 +00:00
maItemListeners . disposeAndClear ( aEvt ) ;
2004-07-05 14:57:14 +00:00
ImageConsumerControl : : dispose ( ) ;
2003-05-22 09:52:09 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoButtonControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
ImageConsumerControl : : createPeer ( rxToolkit , rParentPeer ) ;
2006-08-28 13:56:47 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-07-26 11:24:37 +00:00
xButton - > setActionCommand ( maActionCommand ) ;
2000-09-18 16:07:07 +00:00
if ( maActionListeners . getLength ( ) )
xButton - > addActionListener ( & maActionListeners ) ;
2006-08-28 13:56:47 +00:00
uno : : Reference < XToggleButton > xPushButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
if ( xPushButton . is ( ) )
xPushButton - > addItemListener ( this ) ;
2001-04-04 15:06:33 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoButtonControl : : addActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maActionListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xButton - > addActionListener ( & maActionListeners ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoButtonControl : : removeActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xButton - > removeActionListener ( & maActionListeners ) ;
}
maActionListeners . removeInterface ( l ) ;
}
2006-08-28 13:56:47 +00:00
void UnoButtonControl : : addItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
{
maItemListeners . addInterface ( l ) ;
}
void UnoButtonControl : : removeItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
{
maItemListeners . removeInterface ( l ) ;
}
void SAL_CALL UnoButtonControl : : disposing ( const lang : : EventObject & Source ) throw ( uno : : RuntimeException )
{
ImageConsumerControl : : disposing ( Source ) ;
}
void SAL_CALL UnoButtonControl : : itemStateChanged ( const awt : : ItemEvent & rEvent ) throw ( uno : : RuntimeException )
{
// forward to model
uno : : Any aAny ;
aAny < < = ( sal_Int16 ) rEvent . Selected ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) , aAny , sal_False ) ;
// multiplex
ItemEvent aEvent ( rEvent ) ;
aEvent . Source = * this ;
maItemListeners . itemStateChanged ( aEvent ) ;
}
2001-01-24 14:00:58 +00:00
void UnoButtonControl : : setLabel ( const : : rtl : : OUString & rLabel ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = rLabel ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LABEL ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoButtonControl : : setActionCommand ( const : : rtl : : OUString & rCommand ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maActionCommand = rCommand ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xButton - > setActionCommand ( rCommand ) ;
}
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoButtonControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoButtonControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoButtonControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
// ----------------------------------------------------
// class UnoControlImageControlModel
// ----------------------------------------------------
UnoControlImageControlModel : : UnoControlImageControlModel ( )
2008-12-01 12:31:27 +00:00
: mbAdjustingImageScaleMode ( false )
2000-09-18 16:07:07 +00:00
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXImageControl ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlImageControlModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlImageControlModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlImageControlModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
2006-10-18 12:15:32 +00:00
return uno : : makeAny ( : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlImageControl ) ) ;
2008-12-01 12:31:27 +00:00
if ( nPropId = = BASEPROPERTY_IMAGE_SCALE_MODE )
return makeAny ( awt : : ImageScaleMode : : Anisotropic ) ;
2004-07-05 14:57:14 +00:00
return ImageProducerControlModel : : ImplGetDefaultValue ( nPropId ) ;
2000-09-18 16:07:07 +00:00
}
: : cppu : : IPropertyArrayHelper & UnoControlImageControlModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlImageControlModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
2008-12-01 12:31:27 +00:00
void SAL_CALL UnoControlImageControlModel : : setFastPropertyValue_NoBroadcast ( sal_Int32 _nHandle , const : : com : : sun : : star : : uno : : Any & _rValue ) throw ( : : com : : sun : : star : : uno : : Exception )
{
ImageProducerControlModel : : setFastPropertyValue_NoBroadcast ( _nHandle , _rValue ) ;
// ScaleImage is an older (and less powerful) version of ScaleMode, but keep both in sync as far as possible
try
{
switch ( _nHandle )
{
case BASEPROPERTY_IMAGE_SCALE_MODE :
if ( ! mbAdjustingImageScaleMode & & ImplHasProperty ( BASEPROPERTY_SCALEIMAGE ) )
{
mbAdjustingImageScaleMode = true ;
sal_Int16 nScaleMode ( awt : : ImageScaleMode : : Anisotropic ) ;
OSL_VERIFY ( _rValue > > = nScaleMode ) ;
setPropertyValue ( GetPropertyName ( BASEPROPERTY_SCALEIMAGE ) , uno : : makeAny ( sal_Bool ( nScaleMode ! = awt : : ImageScaleMode : : None ) ) ) ;
mbAdjustingImageScaleMode = false ;
}
break ;
case BASEPROPERTY_SCALEIMAGE :
if ( ! mbAdjustingImageScaleMode & & ImplHasProperty ( BASEPROPERTY_IMAGE_SCALE_MODE ) )
{
mbAdjustingImageScaleMode = true ;
sal_Bool bScale = sal_True ;
OSL_VERIFY ( _rValue > > = bScale ) ;
setPropertyValue ( GetPropertyName ( BASEPROPERTY_IMAGE_SCALE_MODE ) , uno : : makeAny ( bScale ? awt : : ImageScaleMode : : Anisotropic : awt : : ImageScaleMode : : None ) ) ;
mbAdjustingImageScaleMode = false ;
}
break ;
}
}
catch ( const Exception & )
{
mbAdjustingImageScaleMode = false ;
throw ;
}
}
2000-09-18 16:07:07 +00:00
// ----------------------------------------------------
// class UnoImageControlControl
// ----------------------------------------------------
UnoImageControlControl : : UnoImageControlControl ( )
: maActionListeners ( * this )
{
// Woher die Defaults nehmen?
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 100 ;
}
: : rtl : : OUString UnoImageControlControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " fixedimage " ) ;
}
2001-01-24 14:00:58 +00:00
void UnoImageControlControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
lang : : EventObject aEvt ;
2000-09-18 16:07:07 +00:00
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maActionListeners . disposeAndClear ( aEvt ) ;
UnoControl : : dispose ( ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoImageControlControl : : isTransparent ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return sal_True ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoImageControlControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoImageControlControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoImageControlControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
// ----------------------------------------------------
// class UnoControlRadioButtonModel
// ----------------------------------------------------
UnoControlRadioButtonModel : : UnoControlRadioButtonModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXRadioButton ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlRadioButtonModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlRadioButtonModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlRadioButtonModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
switch ( nPropId )
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
case BASEPROPERTY_DEFAULTCONTROL :
return uno : : makeAny ( : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlRadioButton ) ) ;
case BASEPROPERTY_VISUALEFFECT :
return uno : : makeAny ( ( sal_Int16 ) awt : : VisualEffect : : LOOK3D ) ;
2000-09-18 16:07:07 +00:00
}
2004-07-05 14:57:14 +00:00
return ImageProducerControlModel : : ImplGetDefaultValue ( nPropId ) ;
2000-09-18 16:07:07 +00:00
}
: : cppu : : IPropertyArrayHelper & UnoControlRadioButtonModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlRadioButtonModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoRadioButtonControl
// ----------------------------------------------------
UnoRadioButtonControl : : UnoRadioButtonControl ( )
2001-04-04 09:30:44 +00:00
: maItemListeners ( * this ) , maActionListeners ( * this )
2000-09-18 16:07:07 +00:00
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
}
: : rtl : : OUString UnoRadioButtonControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " radiobutton " ) ;
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
lang : : EventObject aEvt ;
2000-09-18 16:07:07 +00:00
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maItemListeners . disposeAndClear ( aEvt ) ;
2004-07-05 14:57:14 +00:00
ImageConsumerControl : : dispose ( ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoRadioButtonControl : : isTransparent ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return sal_True ;
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
ImageConsumerControl : : createPeer ( rxToolkit , rParentPeer ) ;
2000-09-18 16:07:07 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XRadioButton > xRadioButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xRadioButton - > addItemListener ( this ) ;
2001-04-04 09:30:44 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-07-26 11:24:37 +00:00
xButton - > setActionCommand ( maActionCommand ) ;
2001-04-04 09:30:44 +00:00
if ( maActionListeners . getLength ( ) )
xButton - > addActionListener ( & maActionListeners ) ;
2001-08-07 10:18:02 +00:00
// as default, set the "AutoToggle" to true
// (it is set to false in VCLXToolkit::ImplCreateWindow because of #87254#, but we want to
// have it enabled by default because of 85071)
uno : : Reference < awt : : XVclWindowPeer > xVclWindowPeer ( getPeer ( ) , uno : : UNO_QUERY ) ;
if ( xVclWindowPeer . is ( ) )
xVclWindowPeer - > setProperty ( GetPropertyName ( BASEPROPERTY_AUTOTOGGLE ) , : : cppu : : bool2any ( sal_True ) ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : addItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . addInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : removeItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . removeInterface ( l ) ;
}
2001-04-04 09:30:44 +00:00
void UnoRadioButtonControl : : addActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
{
maActionListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2001-04-04 09:30:44 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-04-04 09:30:44 +00:00
xButton - > addActionListener ( & maActionListeners ) ;
}
}
void UnoRadioButtonControl : : removeActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2001-04-04 09:30:44 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-04-04 09:30:44 +00:00
xButton - > removeActionListener ( & maActionListeners ) ;
}
maActionListeners . removeInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : setLabel ( const : : rtl : : OUString & rLabel ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = rLabel ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LABEL ) , aAny , sal_True ) ;
}
2001-04-04 09:30:44 +00:00
void UnoRadioButtonControl : : setActionCommand ( const : : rtl : : OUString & rCommand ) throw ( uno : : RuntimeException )
{
maActionCommand = rCommand ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-04-04 09:30:44 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-04-04 09:30:44 +00:00
xButton - > setActionCommand ( rCommand ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : setState ( sal_Bool bOn ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
sal_Int16 nState = bOn ? 1 : 0 ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = nState ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoRadioButtonControl : : getState ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
sal_Int16 nState = 0 ;
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) ) ;
2000-09-18 16:07:07 +00:00
aVal > > = nState ;
return nState ? sal_True : sal_False ;
}
2001-01-24 14:00:58 +00:00
void UnoRadioButtonControl : : itemStateChanged ( const awt : : ItemEvent & rEvent ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Int16 ) rEvent . Selected ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) , aAny , sal_False ) ;
2003-06-06 09:55:26 +00:00
// compatibility:
// in OOo 1.0.x, when the user clicked a radio button in a group of buttons, this resulted
// in _one_ itemStateChanged call for exactly the radio button which's state changed from
// "0" to "1".
// Nowadays, since the listener handling changed a lot towards 1.1 (the VCLXWindow reacts on more
// basic events from the VCL-windows, not anymore on the Link-based events like in 1.0.x), this
// isn't the case anymore: For instance, this method here gets called for the radio button
// which is being implicitily _de_selected, too. This is pretty bad for compatibility.
// Thus, we suppress all events with a new state other than "1". This is unlogical, and weird, when looking
// from a pure API perspective, but it's _compatible_ with older product versions, and this is
// all which matters here.
// #i14703# - 2003-05-23 - fs@openoffice.org
if ( 1 = = rEvent . Selected )
{
if ( maItemListeners . getLength ( ) )
maItemListeners . itemStateChanged ( rEvent ) ;
}
// note that speaking stricly, this is wrong: When in 1.0.x, the user would have de-selected
// a radio button _without_ selecing another one, this would have caused a notification.
// With the change done here, this today won't cause a notification anymore.
//
// Fortunately, it's not possible for the user to de-select a radio button without selecting another on,
// at least not via the regular UI. It _would_ be possible via the Accessibility API, which
// counts as "user input", too. But in 1.0.x, there was no Accessibility API, so there is nothing
// to be inconsistent with.
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoRadioButtonControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoRadioButtonControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoRadioButtonControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
// ----------------------------------------------------
// class UnoControlCheckBoxModel
// ----------------------------------------------------
UnoControlCheckBoxModel : : UnoControlCheckBoxModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXCheckBox ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlCheckBoxModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlCheckBoxModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlCheckBoxModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
switch ( nPropId )
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
case BASEPROPERTY_DEFAULTCONTROL :
return uno : : makeAny ( : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlCheckBox ) ) ;
case BASEPROPERTY_VISUALEFFECT :
return uno : : makeAny ( ( sal_Int16 ) awt : : VisualEffect : : LOOK3D ) ;
2000-09-18 16:07:07 +00:00
}
2004-07-05 14:57:14 +00:00
return ImageProducerControlModel : : ImplGetDefaultValue ( nPropId ) ;
2000-09-18 16:07:07 +00:00
}
: : cppu : : IPropertyArrayHelper & UnoControlCheckBoxModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlCheckBoxModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoCheckBoxControl
// ----------------------------------------------------
UnoCheckBoxControl : : UnoCheckBoxControl ( )
2001-07-26 11:24:37 +00:00
: maItemListeners ( * this ) , maActionListeners ( * this )
2000-09-18 16:07:07 +00:00
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
}
: : rtl : : OUString UnoCheckBoxControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " checkbox " ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
lang : : EventObject aEvt ;
2000-09-18 16:07:07 +00:00
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maItemListeners . disposeAndClear ( aEvt ) ;
2004-07-05 14:57:14 +00:00
ImageConsumerControl : : dispose ( ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoCheckBoxControl : : isTransparent ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return sal_True ;
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-07-05 14:57:14 +00:00
ImageConsumerControl : : createPeer ( rxToolkit , rParentPeer ) ;
2000-09-18 16:07:07 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XCheckBox > xCheckBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xCheckBox - > addItemListener ( this ) ;
2001-07-26 11:24:37 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-07-26 11:24:37 +00:00
xButton - > setActionCommand ( maActionCommand ) ;
if ( maActionListeners . getLength ( ) )
xButton - > addActionListener ( & maActionListeners ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : addItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . addInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : removeItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . removeInterface ( l ) ;
}
2001-07-26 11:24:37 +00:00
void UnoCheckBoxControl : : addActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
{
maActionListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2001-07-26 11:24:37 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-07-26 11:24:37 +00:00
xButton - > addActionListener ( & maActionListeners ) ;
}
}
void UnoCheckBoxControl : : removeActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2001-07-26 11:24:37 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-07-26 11:24:37 +00:00
xButton - > removeActionListener ( & maActionListeners ) ;
}
maActionListeners . removeInterface ( l ) ;
}
void UnoCheckBoxControl : : setActionCommand ( const : : rtl : : OUString & rCommand ) throw ( uno : : RuntimeException )
{
maActionCommand = rCommand ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-07-26 11:24:37 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XButton > xButton ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-07-26 11:24:37 +00:00
xButton - > setActionCommand ( rCommand ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : setLabel ( const : : rtl : : OUString & rLabel ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = rLabel ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LABEL ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : setState ( short n ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Int16 ) n ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
short UnoCheckBoxControl : : getState ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
short nState = 0 ;
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) ) ;
2000-09-18 16:07:07 +00:00
aVal > > = nState ;
return nState ;
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : enableTriState ( sal_Bool b ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = b ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TRISTATE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCheckBoxControl : : itemStateChanged ( const awt : : ItemEvent & rEvent ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Int16 ) rEvent . Selected ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STATE ) , aAny , sal_False ) ;
if ( maItemListeners . getLength ( ) )
maItemListeners . itemStateChanged ( rEvent ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoCheckBoxControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoCheckBoxControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoCheckBoxControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
2008-01-29 14:06:27 +00:00
// ----------------------------------------------------
// class UnoControlFixedHyperlinkModel
// ----------------------------------------------------
UnoControlFixedHyperlinkModel : : UnoControlFixedHyperlinkModel ( )
{
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXFixedHyperlink ) ;
}
: : rtl : : OUString UnoControlFixedHyperlinkModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFixedHyperlinkModel ) ;
}
uno : : Any UnoControlFixedHyperlinkModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
uno : : Any aAny ;
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFixedHyperlink ) ;
return aAny ;
}
else if ( nPropId = = BASEPROPERTY_BORDER )
{
uno : : Any aAny ;
aAny < < = ( sal_Int16 ) 0 ;
return aAny ;
}
else if ( nPropId = = BASEPROPERTY_URL )
{
uno : : Any aAny ;
aAny < < = : : rtl : : OUString ( ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlFixedHyperlinkModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlFixedHyperlinkModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
{
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
return xInfo ;
}
// ----------------------------------------------------
// class UnoFixedHyperlinkControl
// ----------------------------------------------------
UnoFixedHyperlinkControl : : UnoFixedHyperlinkControl ( )
: maActionListeners ( * this )
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
}
: : rtl : : OUString UnoFixedHyperlinkControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " fixedhyperlink " ) ;
}
// uno::XInterface
uno : : Any UnoFixedHyperlinkControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XFixedHyperlink * , this ) ,
SAL_STATIC_CAST ( awt : : XLayoutConstrains * , this ) ) ;
return ( aRet . hasValue ( ) ? aRet : UnoControlBase : : queryAggregation ( rType ) ) ;
}
// lang::XTypeProvider
IMPL_XTYPEPROVIDER_START ( UnoFixedHyperlinkControl )
getCppuType ( ( uno : : Reference < awt : : XFixedHyperlink > * ) NULL ) ,
getCppuType ( ( uno : : Reference < awt : : XLayoutConstrains > * ) NULL ) ,
UnoControlBase : : getTypes ( )
IMPL_XTYPEPROVIDER_END
sal_Bool UnoFixedHyperlinkControl : : isTransparent ( ) throw ( uno : : RuntimeException )
{
return sal_True ;
}
void UnoFixedHyperlinkControl : : setText ( const : : rtl : : OUString & Text ) throw ( uno : : RuntimeException )
{
uno : : Any aAny ;
aAny < < = Text ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LABEL ) , aAny , sal_True ) ;
}
: : rtl : : OUString UnoFixedHyperlinkControl : : getText ( ) throw ( uno : : RuntimeException )
{
return ImplGetPropertyValue_UString ( BASEPROPERTY_LABEL ) ;
}
void UnoFixedHyperlinkControl : : setURL ( const : : rtl : : OUString & URL ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
uno : : Any aAny ;
aAny < < = URL ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_URL ) , aAny , sal_True ) ;
}
: : rtl : : OUString UnoFixedHyperlinkControl : : getURL ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
return ImplGetPropertyValue_UString ( BASEPROPERTY_URL ) ;
}
void UnoFixedHyperlinkControl : : setAlignment ( short nAlign ) throw ( uno : : RuntimeException )
{
uno : : Any aAny ;
aAny < < = ( sal_Int16 ) nAlign ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_ALIGN ) , aAny , sal_True ) ;
}
short UnoFixedHyperlinkControl : : getAlignment ( ) throw ( uno : : RuntimeException )
{
short nAlign = 0 ;
if ( mxModel . is ( ) )
{
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_ALIGN ) ) ;
aVal > > = nAlign ;
}
return nAlign ;
}
awt : : Size UnoFixedHyperlinkControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
{
return Impl_getMinimumSize ( ) ;
}
awt : : Size UnoFixedHyperlinkControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
{
return Impl_getPreferredSize ( ) ;
}
awt : : Size UnoFixedHyperlinkControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
void UnoFixedHyperlinkControl : : dispose ( ) throw ( uno : : RuntimeException )
{
lang : : EventObject aEvt ;
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maActionListeners . disposeAndClear ( aEvt ) ;
UnoControlBase : : dispose ( ) ;
}
void UnoFixedHyperlinkControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
UnoControlBase : : createPeer ( rxToolkit , rParentPeer ) ;
uno : : Reference < awt : : XFixedHyperlink > xFixedHyperlink ( getPeer ( ) , uno : : UNO_QUERY ) ;
if ( maActionListeners . getLength ( ) )
xFixedHyperlink - > addActionListener ( & maActionListeners ) ;
}
void UnoFixedHyperlinkControl : : addActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
{
maActionListeners . addInterface ( l ) ;
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
{
uno : : Reference < awt : : XFixedHyperlink > xFixedHyperlink ( getPeer ( ) , uno : : UNO_QUERY ) ;
xFixedHyperlink - > addActionListener ( & maActionListeners ) ;
}
}
void UnoFixedHyperlinkControl : : removeActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
{
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
{
uno : : Reference < awt : : XFixedHyperlink > xFixedHyperlink ( getPeer ( ) , uno : : UNO_QUERY ) ;
xFixedHyperlink - > removeActionListener ( & maActionListeners ) ;
}
maActionListeners . removeInterface ( l ) ;
}
2000-09-18 16:07:07 +00:00
// ----------------------------------------------------
// class UnoControlFixedTextModel
// ----------------------------------------------------
UnoControlFixedTextModel : : UnoControlFixedTextModel ( )
{
2008-12-16 13:30:53 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXFixedText ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlFixedTextModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFixedTextModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlFixedTextModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFixedText ) ;
return aAny ;
}
else if ( nPropId = = BASEPROPERTY_BORDER )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Int16 ) 0 ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlFixedTextModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlFixedTextModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoFixedTextControl
// ----------------------------------------------------
UnoFixedTextControl : : UnoFixedTextControl ( )
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
}
: : rtl : : OUString UnoFixedTextControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " fixedtext " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoFixedTextControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XFixedText * , this ) ,
SAL_STATIC_CAST ( awt : : XLayoutConstrains * , this ) ) ;
2000-09-18 16:07:07 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoControlBase : : queryAggregation ( rType ) ) ;
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoFixedTextControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XFixedText > * ) NULL ) ,
getCppuType ( ( uno : : Reference < awt : : XLayoutConstrains > * ) NULL ) ,
2000-09-18 16:07:07 +00:00
UnoControlBase : : getTypes ( )
IMPL_XTYPEPROVIDER_END
2001-01-24 14:00:58 +00:00
sal_Bool UnoFixedTextControl : : isTransparent ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return sal_True ;
}
2001-01-24 14:00:58 +00:00
void UnoFixedTextControl : : setText ( const : : rtl : : OUString & Text ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Text ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LABEL ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoFixedTextControl : : getText ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_UString ( BASEPROPERTY_LABEL ) ;
}
2001-01-24 14:00:58 +00:00
void UnoFixedTextControl : : setAlignment ( short nAlign ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Int16 ) nAlign ;
2001-08-10 08:57:11 +00:00
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_ALIGN ) , aAny , sal_True ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
short UnoFixedTextControl : : getAlignment ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
short nAlign = 0 ;
if ( mxModel . is ( ) )
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_ALIGN ) ) ;
2000-09-18 16:07:07 +00:00
aVal > > = nAlign ;
}
return nAlign ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoFixedTextControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoFixedTextControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoFixedTextControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
// ----------------------------------------------------
// class UnoControlGroupBoxModel
// ----------------------------------------------------
UnoControlGroupBoxModel : : UnoControlGroupBoxModel ( )
{
ImplRegisterProperty ( BASEPROPERTY_DEFAULTCONTROL ) ;
ImplRegisterProperty ( BASEPROPERTY_ENABLED ) ;
ImplRegisterProperty ( BASEPROPERTY_FONTDESCRIPTOR ) ;
2001-03-23 12:31:49 +00:00
ImplRegisterProperty ( BASEPROPERTY_HELPTEXT ) ;
2000-09-18 16:07:07 +00:00
ImplRegisterProperty ( BASEPROPERTY_HELPURL ) ;
ImplRegisterProperty ( BASEPROPERTY_LABEL ) ;
ImplRegisterProperty ( BASEPROPERTY_PRINTABLE ) ;
2008-12-16 13:30:53 +00:00
ImplRegisterProperty ( BASEPROPERTY_WRITING_MODE ) ;
ImplRegisterProperty ( BASEPROPERTY_CONTEXT_WRITING_MODE ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlGroupBoxModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlGroupBoxModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlGroupBoxModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlGroupBox ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlGroupBoxModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlGroupBoxModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoGroupBoxControl
// ----------------------------------------------------
UnoGroupBoxControl : : UnoGroupBoxControl ( )
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 100 ;
}
: : rtl : : OUString UnoGroupBoxControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " groupbox " ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoGroupBoxControl : : isTransparent ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return sal_True ;
}
// ----------------------------------------------------
// class UnoControlListBoxModel
// ----------------------------------------------------
UnoControlListBoxModel : : UnoControlListBoxModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXListBox ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlListBoxModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlListBoxModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlListBoxModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlListBox ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlListBoxModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlListBoxModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
void UnoControlListBoxModel : : ImplPropertyChanged ( sal_uInt16 nPropId )
{
if ( nPropId = = BASEPROPERTY_STRINGITEMLIST )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int16 > aSeq ;
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = aSeq ;
setPropertyValue ( GetPropertyName ( BASEPROPERTY_SELECTEDITEMS ) , aAny ) ;
}
2002-05-16 04:55:33 +00:00
UnoControlModel : : ImplPropertyChanged ( nPropId ) ;
}
void UnoControlListBoxModel : : ImplNormalizePropertySequence ( const sal_Int32 _nCount , sal_Int32 * _pHandles ,
uno : : Any * _pValues , sal_Int32 * _pValidHandles ) const SAL_THROW ( ( ) )
{
// dependencies we know:
// BASEPROPERTY_STRINGITEMLIST->BASEPROPERTY_SELECTEDITEMS
2007-02-14 14:35:00 +00:00
ImplEnsureHandleOrder ( _nCount , _pHandles , _pValues , BASEPROPERTY_STRINGITEMLIST , BASEPROPERTY_SELECTEDITEMS ) ;
2002-05-16 04:55:33 +00:00
UnoControlModel : : ImplNormalizePropertySequence ( _nCount , _pHandles , _pValues , _pValidHandles ) ;
2000-09-18 16:07:07 +00:00
}
// ----------------------------------------------------
// class UnoListBoxControl
// ----------------------------------------------------
UnoListBoxControl : : UnoListBoxControl ( )
: maActionListeners ( * this ) ,
maItemListeners ( * this )
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
}
: : rtl : : OUString UnoListBoxControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " listbox " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoListBoxControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XListBox * , this ) ,
SAL_STATIC_CAST ( awt : : XItemListener * , this ) ,
SAL_STATIC_CAST ( lang : : XEventListener * , SAL_STATIC_CAST ( awt : : XItemListener * , this ) ) ,
SAL_STATIC_CAST ( awt : : XLayoutConstrains * , this ) ,
SAL_STATIC_CAST ( awt : : XTextLayoutConstrains * , this ) ) ;
2000-09-18 16:07:07 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoControlBase : : queryAggregation ( rType ) ) ;
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoListBoxControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XListBox > * ) NULL ) ,
getCppuType ( ( uno : : Reference < awt : : XItemListener > * ) NULL ) ,
getCppuType ( ( uno : : Reference < awt : : XLayoutConstrains > * ) NULL ) ,
getCppuType ( ( uno : : Reference < awt : : XTextLayoutConstrains > * ) NULL ) ,
2000-09-18 16:07:07 +00:00
UnoControlBase : : getTypes ( )
IMPL_XTYPEPROVIDER_END
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
lang : : EventObject aEvt ;
2000-09-18 16:07:07 +00:00
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maActionListeners . disposeAndClear ( aEvt ) ;
maItemListeners . disposeAndClear ( aEvt ) ;
UnoControl : : dispose ( ) ;
}
2001-06-15 06:34:37 +00:00
void UnoListBoxControl : : ImplUpdateSelectedItemsProperty ( )
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-06-15 06:34:37 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-06-15 06:34:37 +00:00
DBG_ASSERT ( xListBox . is ( ) , " XListBox? " ) ;
uno : : Sequence < sal_Int16 > aSeq = xListBox - > getSelectedItemsPos ( ) ;
uno : : Any aAny ;
aAny < < = aSeq ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_SELECTEDITEMS ) , aAny , sal_False ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : ImplSetPeerProperty ( const : : rtl : : OUString & rPropName , const uno : : Any & rVal )
2000-09-18 16:07:07 +00:00
{
UnoControl : : ImplSetPeerProperty ( rPropName , rVal ) ;
// Wenn die SelectedItems vor der StringItemList gesetzt werden,
// hat das keine Auswirkung...
if ( rPropName = = GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) )
{
: : rtl : : OUString aSelPropName = GetPropertyName ( BASEPROPERTY_SELECTEDITEMS ) ;
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( aSelPropName ) ;
if ( ! ( aVal . getValueType ( ) . getTypeClass ( ) = = uno : : TypeClass_VOID ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XVclWindowPeer > xW ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-11-03 12:55:40 +00:00
if ( xW . is ( ) )
// same comment as in UnoControl::ImplSetPeerProperty - see there
xW - > setProperty ( aSelPropName , aVal ) ;
2000-09-18 16:07:07 +00:00
}
}
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
UnoControl : : createPeer ( rxToolkit , rParentPeer ) ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > addItemListener ( this ) ;
if ( maActionListeners . getLength ( ) )
xListBox - > addActionListener ( & maActionListeners ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : addActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maActionListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > addActionListener ( & maActionListeners ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : removeActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > removeActionListener ( & maActionListeners ) ;
}
maActionListeners . removeInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : addItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . addInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : removeItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . removeInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : addItem ( const : : rtl : : OUString & aItem , sal_Int16 nPos ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aSeq ( 1 ) ;
2000-09-18 16:07:07 +00:00
aSeq . getArray ( ) [ 0 ] = aItem ;
addItems ( aSeq , nPos ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : addItems ( const uno : : Sequence < : : rtl : : OUString > & aItems , sal_Int16 nPos ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
sal_uInt16 nNewItems = ( sal_uInt16 ) aItems . getLength ( ) ;
sal_uInt16 nOldLen = ( sal_uInt16 ) aSeq . getLength ( ) ;
sal_uInt16 nNewLen = nOldLen + nNewItems ;
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aNewSeq ( nNewLen ) ;
2000-09-18 16:07:07 +00:00
: : rtl : : OUString * pNewData = aNewSeq . getArray ( ) ;
: : rtl : : OUString * pOldData = aSeq . getArray ( ) ;
2004-02-04 10:11:33 +00:00
if ( ( nPos < 0 ) | | ( nPos > nOldLen ) )
2000-09-18 16:07:07 +00:00
nPos = ( sal_uInt16 ) nOldLen ;
sal_uInt16 n ;
// Items vor der Einfuege-Position
for ( n = 0 ; n < nPos ; n + + )
pNewData [ n ] = pOldData [ n ] ;
// Neue Items
for ( n = 0 ; n < nNewItems ; n + + )
pNewData [ nPos + n ] = aItems . getConstArray ( ) [ n ] ;
// Rest der alten Items
for ( n = nPos ; n < nOldLen ; n + + )
pNewData [ nNewItems + n ] = pOldData [ n ] ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = aNewSeq ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : removeItems ( sal_Int16 nPos , sal_Int16 nCount ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
sal_uInt16 nOldLen = ( sal_uInt16 ) aSeq . getLength ( ) ;
if ( nOldLen & & ( nPos < nOldLen ) )
{
if ( nCount > ( nOldLen - nPos ) )
nCount = nOldLen - nPos ;
sal_uInt16 nNewLen = nOldLen - nCount ;
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aNewSeq ( nNewLen ) ;
2000-09-18 16:07:07 +00:00
: : rtl : : OUString * pNewData = aNewSeq . getArray ( ) ;
: : rtl : : OUString * pOldData = aSeq . getArray ( ) ;
sal_uInt16 n ;
// Items vor der Entfern-Position
for ( n = 0 ; n < nPos ; n + + )
pNewData [ n ] = pOldData [ n ] ;
// Rest der Items
for ( n = nPos ; n < ( nOldLen - nCount ) ; n + + )
pNewData [ n ] = pOldData [ n + nCount ] ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = aNewSeq ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) , aAny , sal_True ) ;
}
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoListBoxControl : : getItemCount ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
return ( sal_Int16 ) aSeq . getLength ( ) ;
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoListBoxControl : : getItem ( sal_Int16 nPos ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
: : rtl : : OUString aItem ;
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
if ( nPos < aSeq . getLength ( ) )
aItem = aSeq . getConstArray ( ) [ nPos ] ;
return aItem ;
}
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > UnoListBoxControl : : getItems ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
return aSeq ;
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoListBoxControl : : getSelectedItemPos ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
sal_Int16 n = - 1 ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
n = xListBox - > getSelectedItemPos ( ) ;
}
return n ;
}
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int16 > UnoListBoxControl : : getSelectedItemsPos ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int16 > aSeq ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
aSeq = xListBox - > getSelectedItemsPos ( ) ;
}
return aSeq ;
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoListBoxControl : : getSelectedItem ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
: : rtl : : OUString aItem ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
aItem = xListBox - > getSelectedItem ( ) ;
}
return aItem ;
}
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > UnoListBoxControl : : getSelectedItems ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aSeq ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
aSeq = xListBox - > getSelectedItems ( ) ;
}
return aSeq ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : selectItemPos ( sal_Int16 nPos , sal_Bool bSelect ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > selectItemPos ( nPos , bSelect ) ;
}
2001-06-15 06:34:37 +00:00
ImplUpdateSelectedItemsProperty ( ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : selectItemsPos ( const uno : : Sequence < sal_Int16 > & aPositions , sal_Bool bSelect ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > selectItemsPos ( aPositions , bSelect ) ;
}
2001-06-15 06:34:37 +00:00
ImplUpdateSelectedItemsProperty ( ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : selectItem ( const : : rtl : : OUString & aItem , sal_Bool bSelect ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > selectItem ( aItem , bSelect ) ;
}
2001-06-15 06:34:37 +00:00
ImplUpdateSelectedItemsProperty ( ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : makeVisible ( sal_Int16 nEntry ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XListBox > xListBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xListBox - > makeVisible ( nEntry ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : setDropDownLineCount ( sal_Int16 nLines ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Int16 ) nLines ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LINECOUNT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoListBoxControl : : getDropDownLineCount ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT16 ( BASEPROPERTY_LINECOUNT ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoListBoxControl : : isMutipleMode ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 09:03:01 +00:00
return ImplGetPropertyValue_BOOL ( BASEPROPERTY_MULTISELECTION ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : setMultipleMode ( sal_Bool bMulti ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = bMulti ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_MULTISELECTION ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : itemStateChanged ( const awt : : ItemEvent & rEvent ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-06-15 06:34:37 +00:00
ImplUpdateSelectedItemsProperty ( ) ;
2000-09-18 16:07:07 +00:00
if ( maItemListeners . getLength ( ) )
2004-10-22 10:36:46 +00:00
{
try
{
maItemListeners . itemStateChanged ( rEvent ) ;
}
catch ( const Exception & e )
{
2006-10-12 09:33:10 +00:00
# if OSL_DEBUG_LEVEL == 0
( void ) e ; // suppress warning
# else
2004-10-22 10:36:46 +00:00
: : rtl : : OString sMessage ( " UnoListBoxControl::itemStateChanged: caught an exception: \n " ) ;
sMessage + = : : rtl : : OString ( e . Message . getStr ( ) , e . Message . getLength ( ) , RTL_TEXTENCODING_ASCII_US ) ;
OSL_ENSURE ( sal_False , sMessage . getStr ( ) ) ;
# endif
}
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoListBoxControl : : getMinimumSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoListBoxControl : : getPreferredSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getPreferredSize ( ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoListBoxControl : : calcAdjustedSize ( const awt : : Size & rNewSize ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_calcAdjustedSize ( rNewSize ) ;
}
2001-01-24 14:00:58 +00:00
awt : : Size UnoListBoxControl : : getMinimumSize ( sal_Int16 nCols , sal_Int16 nLines ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return Impl_getMinimumSize ( nCols , nLines ) ;
}
2001-01-24 14:00:58 +00:00
void UnoListBoxControl : : getColumnsAndLines ( sal_Int16 & nCols , sal_Int16 & nLines ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
Impl_getColumnsAndLines ( nCols , nLines ) ;
}
// ----------------------------------------------------
// class UnoControlComboBoxModel
// ----------------------------------------------------
UnoControlComboBoxModel : : UnoControlComboBoxModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXComboBox ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlComboBoxModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlComboBoxModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlComboBoxModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlComboBox ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlComboBoxModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlComboBoxModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoComboBoxControl
// ----------------------------------------------------
UnoComboBoxControl : : UnoComboBoxControl ( )
: maActionListeners ( * this ) ,
maItemListeners ( * this )
{
maComponentInfos . nWidth = 100 ;
maComponentInfos . nHeight = 12 ;
}
: : rtl : : OUString UnoComboBoxControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " combobox " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoComboBoxControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XComboBox * , this ) ) ;
2000-09-18 16:07:07 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoEditControl : : queryAggregation ( rType ) ) ;
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoComboBoxControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XComboBox > * ) NULL ) ,
2000-09-18 16:07:07 +00:00
UnoEditControl : : getTypes ( )
IMPL_XTYPEPROVIDER_END
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : dispose ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
lang : : EventObject aEvt ;
2000-09-18 16:07:07 +00:00
aEvt . Source = ( : : cppu : : OWeakObject * ) this ;
maActionListeners . disposeAndClear ( aEvt ) ;
maItemListeners . disposeAndClear ( aEvt ) ;
UnoControl : : dispose ( ) ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
UnoEditControl : : createPeer ( rxToolkit , rParentPeer ) ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XComboBox > xComboBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
if ( maActionListeners . getLength ( ) )
xComboBox - > addActionListener ( & maActionListeners ) ;
if ( maItemListeners . getLength ( ) )
xComboBox - > addItemListener ( & maItemListeners ) ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : addActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maActionListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XComboBox > xComboBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xComboBox - > addActionListener ( & maActionListeners ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : removeActionListener ( const uno : : Reference < awt : : XActionListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maActionListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XComboBox > xComboBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xComboBox - > removeActionListener ( & maActionListeners ) ;
}
maActionListeners . removeInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : addItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
maItemListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maItemListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XComboBox > xComboBox ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xComboBox - > addItemListener ( & maItemListeners ) ;
}
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : removeItemListener ( const uno : : Reference < awt : : XItemListener > & l ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maItemListeners . getLength ( ) = = 1 )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XComboBox > xComboBox ( getPeer ( ) , uno : : UNO_QUERY ) ; // MT: Mal alles so umstellen, schoener als Ref anlegen und query rufen
2000-09-18 16:07:07 +00:00
xComboBox - > removeItemListener ( & maItemListeners ) ;
}
maItemListeners . removeInterface ( l ) ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : addItem ( const : : rtl : : OUString & aItem , sal_Int16 nPos ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aSeq ( 1 ) ;
2000-09-18 16:07:07 +00:00
aSeq . getArray ( ) [ 0 ] = aItem ;
addItems ( aSeq , nPos ) ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : addItems ( const uno : : Sequence < : : rtl : : OUString > & aItems , sal_Int16 nPos ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
sal_uInt16 nNewItems = ( sal_uInt16 ) aItems . getLength ( ) ;
sal_uInt16 nOldLen = ( sal_uInt16 ) aSeq . getLength ( ) ;
sal_uInt16 nNewLen = nOldLen + nNewItems ;
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aNewSeq ( nNewLen ) ;
2000-09-18 16:07:07 +00:00
: : rtl : : OUString * pNewData = aNewSeq . getArray ( ) ;
const : : rtl : : OUString * pOldData = aSeq . getConstArray ( ) ;
2004-02-04 10:11:33 +00:00
if ( ( nPos < 0 ) | | ( nPos > nOldLen ) )
2000-09-18 16:07:07 +00:00
nPos = ( sal_uInt16 ) nOldLen ;
sal_uInt16 n ;
// Items vor der Einfuege-Position
for ( n = 0 ; n < nPos ; n + + )
pNewData [ n ] = pOldData [ n ] ;
// Neue Items
for ( n = 0 ; n < nNewItems ; n + + )
pNewData [ nPos + n ] = aItems . getConstArray ( ) [ n ] ;
// Rest der alten Items
for ( n = nPos ; n < nOldLen ; n + + )
pNewData [ nNewItems + n ] = pOldData [ n ] ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = aNewSeq ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : removeItems ( sal_Int16 nPos , sal_Int16 nCount ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
sal_uInt16 nOldLen = ( sal_uInt16 ) aSeq . getLength ( ) ;
if ( nOldLen & & ( nPos < nOldLen ) )
{
if ( nCount > ( nOldLen - nPos ) )
nCount = nOldLen - nPos ;
sal_uInt16 nNewLen = nOldLen - nCount ;
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > aNewSeq ( nNewLen ) ;
2000-09-18 16:07:07 +00:00
: : rtl : : OUString * pNewData = aNewSeq . getArray ( ) ;
: : rtl : : OUString * pOldData = aSeq . getArray ( ) ;
sal_uInt16 n ;
// Items vor der Entfern-Position
for ( n = 0 ; n < nPos ; n + + )
pNewData [ n ] = pOldData [ n ] ;
// Rest der Items
for ( n = nPos ; n < ( nOldLen - nCount ) ; n + + )
pNewData [ n ] = pOldData [ n + nCount ] ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = aNewSeq ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) , aAny , sal_True ) ;
}
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoComboBoxControl : : getItemCount ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
return ( sal_Int16 ) aSeq . getLength ( ) ;
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoComboBoxControl : : getItem ( sal_Int16 nPos ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
: : rtl : : OUString aItem ;
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
if ( nPos < aSeq . getLength ( ) )
aItem = aSeq . getConstArray ( ) [ nPos ] ;
return aItem ;
}
2001-01-24 14:00:58 +00:00
uno : : Sequence < : : rtl : : OUString > UnoComboBoxControl : : getItems ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aVal = ImplGetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRINGITEMLIST ) ) ;
uno : : Sequence < : : rtl : : OUString > aSeq ;
2000-09-18 16:07:07 +00:00
aVal > > = aSeq ;
return aSeq ;
}
2001-01-24 14:00:58 +00:00
void UnoComboBoxControl : : setDropDownLineCount ( sal_Int16 nLines ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = nLines ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LINECOUNT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoComboBoxControl : : getDropDownLineCount ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT16 ( BASEPROPERTY_LINECOUNT ) ;
}
2002-09-05 06:53:00 +00:00
// ----------------------------------------------------
// UnoSpinFieldControl
// ----------------------------------------------------
UnoSpinFieldControl : : UnoSpinFieldControl ( ) : maSpinListeners ( * this )
{
mbRepeat = sal_False ;
}
// uno::XInterface
uno : : Any UnoSpinFieldControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XSpinField * , this ) ) ;
return ( aRet . hasValue ( ) ? aRet : UnoEditControl : : queryAggregation ( rType ) ) ;
}
// lang::XTypeProvider
IMPL_XTYPEPROVIDER_START ( UnoSpinFieldControl )
getCppuType ( ( uno : : Reference < awt : : XSpinField > * ) NULL ) ,
UnoEditControl : : getTypes ( )
IMPL_XTYPEPROVIDER_END
void UnoSpinFieldControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
UnoEditControl : : createPeer ( rxToolkit , rParentPeer ) ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
xField - > enableRepeat ( mbRepeat ) ;
if ( maSpinListeners . getLength ( ) )
xField - > addSpinListener ( & maSpinListeners ) ;
}
// ::com::sun::star::awt::XSpinField
void UnoSpinFieldControl : : addSpinListener ( const : : com : : sun : : star : : uno : : Reference < : : com : : sun : : star : : awt : : XSpinListener > & l ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
maSpinListeners . addInterface ( l ) ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maSpinListeners . getLength ( ) = = 1 )
2002-09-05 06:53:00 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
xField - > addSpinListener ( & maSpinListeners ) ;
}
}
void UnoSpinFieldControl : : removeSpinListener ( const : : com : : sun : : star : : uno : : Reference < : : com : : sun : : star : : awt : : XSpinListener > & l ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) & & maSpinListeners . getLength ( ) = = 1 )
2002-09-05 06:53:00 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
xField - > removeSpinListener ( & maSpinListeners ) ;
}
maSpinListeners . removeInterface ( l ) ;
}
void UnoSpinFieldControl : : up ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
if ( xField . is ( ) )
xField - > up ( ) ;
}
void UnoSpinFieldControl : : down ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
if ( xField . is ( ) )
xField - > down ( ) ;
}
void UnoSpinFieldControl : : first ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
if ( xField . is ( ) )
xField - > first ( ) ;
}
void UnoSpinFieldControl : : last ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
if ( xField . is ( ) )
xField - > last ( ) ;
}
void UnoSpinFieldControl : : enableRepeat ( sal_Bool bRepeat ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
mbRepeat = bRepeat ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XSpinField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2002-09-05 06:53:00 +00:00
if ( xField . is ( ) )
xField - > enableRepeat ( bRepeat ) ;
}
2000-09-18 16:07:07 +00:00
// ----------------------------------------------------
// class UnoControlDateFieldModel
// ----------------------------------------------------
UnoControlDateFieldModel : : UnoControlDateFieldModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXDateField ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlDateFieldModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlDateFieldModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlDateFieldModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlDateField ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlDateFieldModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlDateFieldModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoDateFieldControl
// ----------------------------------------------------
UnoDateFieldControl : : UnoDateFieldControl ( )
{
2001-08-10 08:10:14 +00:00
mnFirst = Date ( 1 , 1 , 1900 ) . GetDate ( ) ;
mnLast = Date ( 31 , 12 , 2200 ) . GetDate ( ) ;
2001-11-06 14:49:00 +00:00
mbLongFormat = 2 ;
2000-09-18 16:07:07 +00:00
}
: : rtl : : OUString UnoDateFieldControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " datefield " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoDateFieldControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XDateField * , this ) ) ;
2002-09-05 06:53:00 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoSpinFieldControl : : queryAggregation ( rType ) ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoDateFieldControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XDateField > * ) NULL ) ,
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : getTypes ( )
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_END
2001-08-10 08:10:14 +00:00
void UnoDateFieldControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : createPeer ( rxToolkit , rParentPeer ) ;
2001-08-10 08:10:14 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setFirst ( mnFirst ) ;
xField - > setLast ( mnLast ) ;
2001-11-06 14:49:00 +00:00
if ( mbLongFormat ! = 2 ) // not set
xField - > setLongFormat ( mbLongFormat ) ;
2001-08-10 08:10:14 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : textChanged ( const awt : : TextEvent & e ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-04-02 09:33:51 +00:00
uno : : Reference < awt : : XVclWindowPeer > xPeer ( getPeer ( ) , uno : : UNO_QUERY ) ;
// also change the text property (#i25106#)
if ( xPeer . is ( ) )
{
: : rtl : : OUString sTextPropertyName = GetPropertyName ( BASEPROPERTY_TEXT ) ;
ImplSetPropertyValue ( sTextPropertyName , xPeer - > getProperty ( sTextPropertyName ) , sal_False ) ;
}
// re-calc the Date property
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-01-24 14:00:58 +00:00
uno : : Any aValue ;
2004-04-02 09:33:51 +00:00
if ( xField - > isEmpty ( ) )
{
// the field says it's empty
sal_Bool bEnforceFormat = sal_True ;
if ( xPeer . is ( ) )
xPeer - > getProperty ( GetPropertyName ( BASEPROPERTY_ENFORCE_FORMAT ) ) > > = bEnforceFormat ;
if ( ! bEnforceFormat )
{
// and it also says that it is currently accepting invalid inputs, without
// forcing it to a valid date
uno : : Reference < awt : : XTextComponent > xText ( xPeer , uno : : UNO_QUERY ) ;
if ( xText . is ( ) & & xText - > getText ( ) . getLength ( ) )
// and in real, the text of the peer is *not* empty
// -> simulate an invalid date, which is different from "no date"
aValue < < = util : : Date ( 0 , 0 , 0 ) ;
}
}
else
2000-09-18 16:07:07 +00:00
aValue < < = xField - > getDate ( ) ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_DATE ) , aValue , sal_False ) ;
2004-04-02 09:33:51 +00:00
// multiplex the event
2000-09-18 16:07:07 +00:00
if ( GetTextListeners ( ) . getLength ( ) )
GetTextListeners ( ) . textChanged ( e ) ;
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setDate ( sal_Int32 Date ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Date ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_DATE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoDateFieldControl : : getDate ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_DATE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setMin ( sal_Int32 Date ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Date ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_DATEMIN ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoDateFieldControl : : getMin ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_DATEMIN ) ;
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setMax ( sal_Int32 Date ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Date ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_DATEMAX ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoDateFieldControl : : getMax ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_DATEMAX ) ;
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setFirst ( sal_Int32 Date ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
mnFirst = Date ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:10:14 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setFirst ( Date ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoDateFieldControl : : getFirst ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
return mnFirst ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setLast ( sal_Int32 Date ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
mnLast = Date ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:10:14 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setLast ( Date ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoDateFieldControl : : getLast ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
return mnLast ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setLongFormat ( sal_Bool bLong ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
mbLongFormat = bLong ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:10:14 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setLongFormat ( bLong ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoDateFieldControl : : isLongFormat ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-11-06 14:49:00 +00:00
return ( mbLongFormat ! = 2 ) ? mbLongFormat : sal_False ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setEmpty ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xField - > setEmpty ( ) ;
}
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoDateFieldControl : : isEmpty ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
sal_Bool bEmpty = sal_False ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XDateField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
bEmpty = xField - > isEmpty ( ) ;
}
return bEmpty ;
}
2001-01-24 14:00:58 +00:00
void UnoDateFieldControl : : setStrictFormat ( sal_Bool bStrict ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = bStrict ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRICTFORMAT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoDateFieldControl : : isStrictFormat ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_BOOL ( BASEPROPERTY_STRICTFORMAT ) ;
}
// ----------------------------------------------------
// class UnoControlTimeFieldModel
// ----------------------------------------------------
UnoControlTimeFieldModel : : UnoControlTimeFieldModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXTimeField ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlTimeFieldModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlTimeFieldModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlTimeFieldModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlTimeField ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlTimeFieldModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlTimeFieldModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoTimeFieldControl
// ----------------------------------------------------
UnoTimeFieldControl : : UnoTimeFieldControl ( )
{
2001-08-10 08:10:14 +00:00
mnFirst = Time ( 0 , 0 ) . GetTime ( ) ;
mnLast = Time ( 23 , 59 , 59 , 99 ) . GetTime ( ) ;
2000-09-18 16:07:07 +00:00
}
: : rtl : : OUString UnoTimeFieldControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " timefield " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoTimeFieldControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XTimeField * , this ) ) ;
2002-09-05 06:53:00 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoSpinFieldControl : : queryAggregation ( rType ) ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoTimeFieldControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XTimeField > * ) NULL ) ,
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : getTypes ( )
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_END
2001-08-10 08:10:14 +00:00
void UnoTimeFieldControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : createPeer ( rxToolkit , rParentPeer ) ;
2001-08-10 08:10:14 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTimeField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setFirst ( mnFirst ) ;
xField - > setLast ( mnLast ) ;
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : textChanged ( const awt : : TextEvent & e ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2004-04-02 09:33:51 +00:00
// also change the text property (#i25106#)
uno : : Reference < awt : : XVclWindowPeer > xPeer ( getPeer ( ) , uno : : UNO_QUERY ) ;
: : rtl : : OUString sTextPropertyName = GetPropertyName ( BASEPROPERTY_TEXT ) ;
ImplSetPropertyValue ( sTextPropertyName , xPeer - > getProperty ( sTextPropertyName ) , sal_False ) ;
// re-calc the Time property
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTimeField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-01-24 14:00:58 +00:00
uno : : Any aValue ;
2000-09-18 16:07:07 +00:00
if ( ! xField - > isEmpty ( ) )
2001-12-10 06:33:04 +00:00
aValue < < = xField - > getTime ( ) ;
2000-09-18 16:07:07 +00:00
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TIME ) , aValue , sal_False ) ;
2004-04-02 09:33:51 +00:00
// multiplex the event
2000-09-18 16:07:07 +00:00
if ( GetTextListeners ( ) . getLength ( ) )
GetTextListeners ( ) . textChanged ( e ) ;
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setTime ( sal_Int32 Time ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Time ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TIME ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoTimeFieldControl : : getTime ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_TIME ) ;
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setMin ( sal_Int32 Time ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Time ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TIMEMIN ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoTimeFieldControl : : getMin ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_TIMEMIN ) ;
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setMax ( sal_Int32 Time ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Time ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_TIMEMAX ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoTimeFieldControl : : getMax ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_TIMEMAX ) ;
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setFirst ( sal_Int32 Time ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
mnFirst = Time ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:10:14 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTimeField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setFirst ( mnFirst ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoTimeFieldControl : : getFirst ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
return mnFirst ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setLast ( sal_Int32 Time ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
mnLast = Time ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:10:14 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTimeField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:10:14 +00:00
xField - > setFirst ( mnLast ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Int32 UnoTimeFieldControl : : getLast ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:10:14 +00:00
return mnLast ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setEmpty ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTimeField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
xField - > setEmpty ( ) ;
}
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoTimeFieldControl : : isEmpty ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
sal_Bool bEmpty = sal_False ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XTimeField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-09-18 16:07:07 +00:00
bEmpty = xField - > isEmpty ( ) ;
}
return bEmpty ;
}
2001-01-24 14:00:58 +00:00
void UnoTimeFieldControl : : setStrictFormat ( sal_Bool bStrict ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = bStrict ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRICTFORMAT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoTimeFieldControl : : isStrictFormat ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_BOOL ( BASEPROPERTY_STRICTFORMAT ) ;
}
// ----------------------------------------------------
// class UnoControlNumericFieldModel
// ----------------------------------------------------
UnoControlNumericFieldModel : : UnoControlNumericFieldModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXNumericField ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlNumericFieldModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlNumericFieldModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlNumericFieldModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlNumericField ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlNumericFieldModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlNumericFieldModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoNumericFieldControl
// ----------------------------------------------------
UnoNumericFieldControl : : UnoNumericFieldControl ( )
{
2001-08-10 08:52:16 +00:00
mnFirst = 0 ;
mnLast = 0x7FFFFFFF ;
2000-09-18 16:07:07 +00:00
}
: : rtl : : OUString UnoNumericFieldControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " numericfield " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoNumericFieldControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XNumericField * , this ) ) ;
2002-09-05 06:53:00 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoSpinFieldControl : : queryAggregation ( rType ) ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoNumericFieldControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XNumericField > * ) NULL ) ,
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : getTypes ( )
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_END
2001-08-10 08:52:16 +00:00
void UnoNumericFieldControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : createPeer ( rxToolkit , rParentPeer ) ;
2001-08-10 08:52:16 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XNumericField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:52:16 +00:00
xField - > setFirst ( mnFirst ) ;
xField - > setLast ( mnLast ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : textChanged ( const awt : : TextEvent & e ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XNumericField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = xField - > getValue ( ) ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUE_DOUBLE ) , aAny , sal_False ) ;
if ( GetTextListeners ( ) . getLength ( ) )
GetTextListeners ( ) . textChanged ( e ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setValue ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Value ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUE_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoNumericFieldControl : : getValue ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUE_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setMin ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Value ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUEMIN_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoNumericFieldControl : : getMin ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUEMIN_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setMax ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Value ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUEMAX_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoNumericFieldControl : : getMax ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUEMAX_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setFirst ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
mnFirst = Value ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:52:16 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XNumericField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:52:16 +00:00
xField - > setFirst ( mnFirst ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
double UnoNumericFieldControl : : getFirst ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
return mnFirst ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setLast ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
mnLast = Value ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:52:16 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XNumericField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:52:16 +00:00
xField - > setLast ( mnLast ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
double UnoNumericFieldControl : : getLast ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
return mnLast ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setStrictFormat ( sal_Bool bStrict ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = bStrict ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRICTFORMAT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoNumericFieldControl : : isStrictFormat ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_BOOL ( BASEPROPERTY_STRICTFORMAT ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setSpinSize ( double Digits ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Digits ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUESTEP_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoNumericFieldControl : : getSpinSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUESTEP_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoNumericFieldControl : : setDecimalDigits ( sal_Int16 Digits ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
uno : : Any aAny ;
aAny < < = Digits ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_DECIMALACCURACY ) , aAny , sal_True ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoNumericFieldControl : : getDecimalDigits ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
return ImplGetPropertyValue_INT16 ( BASEPROPERTY_DECIMALACCURACY ) ;
2000-09-18 16:07:07 +00:00
}
// ----------------------------------------------------
// class UnoControlCurrencyFieldModel
// ----------------------------------------------------
UnoControlCurrencyFieldModel : : UnoControlCurrencyFieldModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXCurrencyField ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlCurrencyFieldModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlCurrencyFieldModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlCurrencyFieldModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlCurrencyField ) ;
return aAny ;
}
if ( nPropId = = BASEPROPERTY_CURSYM_POSITION )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = ( sal_Bool ) sal_False ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlCurrencyFieldModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlCurrencyFieldModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoCurrencyFieldControl
// ----------------------------------------------------
UnoCurrencyFieldControl : : UnoCurrencyFieldControl ( )
{
2001-08-10 08:52:16 +00:00
mnFirst = 0 ;
mnLast = 0x7FFFFFFF ;
2000-09-18 16:07:07 +00:00
}
: : rtl : : OUString UnoCurrencyFieldControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " longcurrencyfield " ) ;
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoCurrencyFieldControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XCurrencyField * , this ) ) ;
2002-09-05 06:53:00 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoSpinFieldControl : : queryAggregation ( rType ) ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoCurrencyFieldControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XCurrencyField > * ) NULL ) ,
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : getTypes ( )
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_END
2001-08-10 08:52:16 +00:00
void UnoCurrencyFieldControl : : createPeer ( const uno : : Reference < awt : : XToolkit > & rxToolkit , const uno : : Reference < awt : : XWindowPeer > & rParentPeer ) throw ( uno : : RuntimeException )
{
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : createPeer ( rxToolkit , rParentPeer ) ;
2001-08-10 08:52:16 +00:00
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XCurrencyField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:52:16 +00:00
xField - > setFirst ( mnFirst ) ;
xField - > setLast ( mnLast ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : textChanged ( const awt : : TextEvent & e ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XCurrencyField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = xField - > getValue ( ) ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUE_DOUBLE ) , aAny , sal_False ) ;
if ( GetTextListeners ( ) . getLength ( ) )
GetTextListeners ( ) . textChanged ( e ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setValue ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Value ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUE_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoCurrencyFieldControl : : getValue ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUE_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setMin ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Value ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUEMIN_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoCurrencyFieldControl : : getMin ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUEMIN_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setMax ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Value ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUEMAX_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoCurrencyFieldControl : : getMax ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUEMAX_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setFirst ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
mnFirst = Value ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:52:16 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XCurrencyField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:52:16 +00:00
xField - > setFirst ( mnFirst ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
double UnoCurrencyFieldControl : : getFirst ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
return mnFirst ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setLast ( double Value ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
mnLast = Value ;
2003-03-27 16:05:12 +00:00
if ( getPeer ( ) . is ( ) )
2001-08-10 08:52:16 +00:00
{
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XCurrencyField > xField ( getPeer ( ) , uno : : UNO_QUERY ) ;
2001-08-10 08:52:16 +00:00
xField - > setLast ( mnLast ) ;
}
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
double UnoCurrencyFieldControl : : getLast ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
return mnLast ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setStrictFormat ( sal_Bool bStrict ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = bStrict ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRICTFORMAT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoCurrencyFieldControl : : isStrictFormat ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_BOOL ( BASEPROPERTY_STRICTFORMAT ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setSpinSize ( double Digits ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = Digits ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_VALUESTEP_DOUBLE ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
double UnoCurrencyFieldControl : : getSpinSize ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_DOUBLE ( BASEPROPERTY_VALUESTEP_DOUBLE ) ;
}
2001-01-24 14:00:58 +00:00
void UnoCurrencyFieldControl : : setDecimalDigits ( sal_Int16 Digits ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
uno : : Any aAny ;
aAny < < = Digits ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_DECIMALACCURACY ) , aAny , sal_True ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
sal_Int16 UnoCurrencyFieldControl : : getDecimalDigits ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-08-10 08:52:16 +00:00
return ImplGetPropertyValue_INT16 ( BASEPROPERTY_DECIMALACCURACY ) ;
2000-09-18 16:07:07 +00:00
}
// ----------------------------------------------------
// class UnoControlPatternFieldModel
// ----------------------------------------------------
UnoControlPatternFieldModel : : UnoControlPatternFieldModel ( )
{
2008-01-14 11:58:14 +00:00
UNO_CONTROL_MODEL_REGISTER_PROPERTIES ( VCLXPatternField ) ;
2000-09-18 16:07:07 +00:00
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlPatternFieldModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlPatternFieldModel ) ;
}
2001-01-24 14:00:58 +00:00
uno : : Any UnoControlPatternFieldModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
2000-09-18 16:07:07 +00:00
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlPatternField ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlPatternFieldModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
2001-01-24 14:00:58 +00:00
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
2000-09-18 16:07:07 +00:00
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
2001-01-24 14:00:58 +00:00
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlPatternFieldModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
2000-09-18 16:07:07 +00:00
return xInfo ;
}
// ----------------------------------------------------
// class UnoPatternFieldControl
// ----------------------------------------------------
UnoPatternFieldControl : : UnoPatternFieldControl ( )
{
}
: : rtl : : OUString UnoPatternFieldControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " patternfield " ) ;
}
2001-01-24 14:00:58 +00:00
void UnoPatternFieldControl : : ImplSetPeerProperty ( const : : rtl : : OUString & rPropName , const uno : : Any & rVal )
2000-09-18 16:07:07 +00:00
{
sal_uInt16 nType = GetPropertyId ( rPropName ) ;
if ( ( nType = = BASEPROPERTY_TEXT ) | | ( nType = = BASEPROPERTY_EDITMASK ) | | ( nType = = BASEPROPERTY_LITERALMASK ) )
{
// Die Masken koennen nicht nacheinander gesetzt werden.
: : rtl : : OUString Text = ImplGetPropertyValue_UString ( BASEPROPERTY_TEXT ) ;
: : rtl : : OUString EditMask = ImplGetPropertyValue_UString ( BASEPROPERTY_EDITMASK ) ;
: : rtl : : OUString LiteralMask = ImplGetPropertyValue_UString ( BASEPROPERTY_LITERALMASK ) ;
2003-03-27 16:05:12 +00:00
uno : : Reference < awt : : XPatternField > xPF ( getPeer ( ) , uno : : UNO_QUERY ) ;
2000-11-03 12:55:40 +00:00
if ( xPF . is ( ) )
2007-07-18 07:43:55 +00:00
{
// same comment as in UnoControl::ImplSetPeerProperty - see there
: : rtl : : OUString sText ( Text ) ;
CWS-TOOLING: integrate CWS dba32b
2009-06-03 14:58:08 +0200 fs r272581 : #i102439#
2009-05-29 13:56:18 +0200 fs r272456 : remove the sub form when the 'add subform' setting changes from <true/> to <false/>, not only its controls
2009-05-29 13:19:27 +0200 fs r272454 : display '(Default)' instead of an empty string when a control has the default font
2009-05-28 20:49:18 +0200 fs r272428 : #i98162# getFirstSelectedValue: do not return reference to a temporary
2009-05-27 15:30:22 +0200 msc r272353 : #102303#
2009-05-26 13:03:06 +0200 fs r272295 : spelling
2009-05-26 12:59:54 +0200 fs r272294 : merge m48 version to get latest cygwin related fixes
2009-05-25 14:02:06 +0200 fs r272239 : remove references to local files, needed for debugging sessions only
2009-05-25 14:01:16 +0200 fs r272238 : #i102021# ensure members such as bNumberFormat are initialized before actually returning them
2009-05-25 13:10:20 +0200 fs r272236 : #i10000# reset ENABLE_EVOAB2
2009-05-22 06:44:45 +0200 oj r272167 : #i99104# add import handler for calc-sett
2009-05-22 06:42:27 +0200 oj r272166 : #i99104# impl NullDate as member
2009-05-22 06:36:22 +0200 oj r272165 : #i99104# handle nulldate from parent model
2009-05-22 06:33:13 +0200 oj r272164 : #i99104# export and import calculation-settings and nulldate
2009-05-22 06:27:50 +0200 oj r272163 : #i99104# export and import calculation-settings and nulldate
2009-05-20 13:29:58 +0200 oj r272118 : #i99911# handle invalid name
2009-05-20 13:28:49 +0200 oj r272117 : #i101261# handle different rowsets
2009-05-20 11:29:55 +0200 msc r272111 : #i100000#
2009-05-20 11:28:27 +0200 msc r272110 : merge in change from dba32a
2009-05-20 11:27:38 +0200 msc r272109 : #102082# CTRL + C does not work
2009-05-20 09:43:36 +0200 oj r272106 : clean up includes
2009-05-20 09:32:15 +0200 oj r272105 : #i99060# merge error resovled now VERTICAL_ALIGN is in both stmt
2009-05-20 08:37:21 +0200 msc r272104 : add workaround for issue #102010#
2009-05-20 08:10:12 +0200 oj r272103 : #i99104# use numberformatkey
2009-05-20 08:07:02 +0200 oj r272102 : #i99104# use column info from rowset
2009-05-20 08:04:43 +0200 oj r272101 : #i102032# use a special column type where prec and scale are the values currently set at the column
2009-05-20 08:03:04 +0200 oj r272100 : #i102032# correct type info, we have to use SQL defined type names
2009-05-19 10:27:02 +0200 oj r272061 : #i99104# export null-date
2009-05-19 08:26:53 +0200 oj r272056 : #i99104# export null-date
2009-05-18 13:15:10 +0200 msc r272014 : add issue #102019#
2009-05-18 11:33:07 +0200 msc r272005 : add issue #102019#
2009-05-18 08:59:45 +0200 msc r271996 : add workaroud for issue #102010#
2009-05-15 10:21:24 +0200 msc r271929 : #101944#
2009-05-11 21:18:30 +0200 fs r271792 : #i99914#
2009-05-08 13:52:06 +0200 oj r271715 : #i96423# remember column span
2009-05-08 11:26:19 +0200 oj r271708 : #i98605# impl new scale mode
2009-05-08 10:33:35 +0200 fs r271706 : SendUserCall: only call into the shape notification routine for UserCall types where this is necessary (performance issue)
2009-05-07 20:52:44 +0200 fs r271698 : outsource ShapeProperty from shapepropertynotifier.hxx
2009-05-07 20:43:33 +0200 fs r271697 : #i99056# use notifyShapePropertyChange, instead of getShapePropertyChangeNotifier - the latter throws if no shape exists, yet
2009-05-07 20:33:58 +0200 fs r271696 : #i99056# +notifyShapePropertyChange: allow notifying chages without checking whether there actually already exists an SvxShape
2009-05-07 16:22:15 +0200 fs r271679 : #i10000# cygwin needs quotes around the classpath
2009-05-07 16:21:37 +0200 fs r271678 : #i10000# cygwin needs quotes around the classpath
2009-05-07 16:01:11 +0200 oj r271677 : #i99914# notify parent handler
2009-05-07 15:54:54 +0200 fs r271676 : #i10000# cygwin needs some quoting
2009-05-07 14:49:48 +0200 oj r271672 : #i99277# quote alias name
2009-05-07 14:48:12 +0200 oj r271671 : #i92538# add ~ in front of type
2009-05-07 14:37:13 +0200 oj r271667 : #i99118# change type from char to varchar
2009-05-07 14:36:23 +0200 oj r271666 : #i99118# clear dest columns when changing to create new table
2009-05-07 13:35:32 +0200 oj r271657 : #i94467# handle type 0 as double as well
2009-05-07 13:20:49 +0200 oj r271655 : i99743# setNull when varchar is no text
2009-05-07 12:58:06 +0200 fs r271651 : initialize the SdrObject's property change notifier after the ctor, if necessary
2009-05-07 11:47:18 +0200 fs r271647 : #i10000#
2009-05-07 10:57:16 +0200 fs r271639 : OPropertyBrowserController::propertyChange: care for the current property state, too, and properly forward it to the UI
2009-05-07 10:18:14 +0200 fs r271636 : onNewComponent: do not ask the map for grid columns, it will throw
2009-05-07 10:09:55 +0200 fs r271634 : #i101623#
2009-05-07 09:53:44 +0200 fs r271631 : #i101622#
2009-05-06 21:55:53 +0200 fs r271615 : #i10000#
2009-05-06 21:10:42 +0200 fs r271611 : #i10000#
2009-05-06 13:11:48 +0200 fs r271583 : #i10000#
2009-05-05 22:29:31 +0200 fs r271559 : proper assertion message
2009-05-05 22:29:03 +0200 fs r271558 : diagnostics
2009-05-05 22:16:16 +0200 fs r271557 : #i10000#
2009-05-05 13:50:32 +0200 fs r271513 : #i10000#
2009-05-05 10:21:50 +0200 fs r271503 : #i10000#
2009-05-05 09:30:26 +0200 fs r271501 : why did those survive the rebase -C step?
2009-05-05 09:18:12 +0200 fs r271500 : #i10000#
2009-05-04 17:08:17 +0200 fs r271475 : CWS-TOOLING: rebase CWS dba32b to trunk@271427 (milestone: DEV300:m47)
2009-05-04 14:51:26 +0200 fs r271456 : line ends
2009-04-30 15:55:27 +0200 fs r271418 : NewURL -> PublicConnectionURL
2009-04-22 21:18:34 +0200 fs r271141 : #i100944#
2009-04-22 09:12:26 +0200 oj r271071 : #i101261# little code change
2009-04-22 09:11:43 +0200 oj r271070 : #i101261# only ask for parameters which aren't set before
2009-04-22 09:11:25 +0200 oj r271069 : #i101261# new grabage container for nodes
2009-04-22 09:11:02 +0200 oj r271068 : #i101261# new grabage container for nodes
2009-04-22 09:10:44 +0200 oj r271067 : #i101261# new grabage container for nodes
2009-04-22 09:10:21 +0200 oj r271066 : #i101261# only ask for parameters which aren't set before
2009-04-22 09:08:24 +0200 oj r271065 : #i101261# only ask for parameters which aren't set before
2009-04-22 09:07:25 +0200 oj r271064 : #i101261# only ask for parameters which aren't set before
2009-04-22 08:49:07 +0200 oj r271062 : #i77501# preview only when needed
2009-04-22 08:45:44 +0200 oj r271061 : #i101261# new prop max rows
2009-04-22 08:44:18 +0200 oj r271060 : #i101261# create dataprovider earlier to avoid the wrong legend in chart
2009-04-22 08:42:48 +0200 oj r271059 : #i101261# handle parameter
2009-04-17 21:00:23 +0200 fs r270954 : #i98350#
2009-04-17 13:54:19 +0200 fs r270942 : #i99565#
2009-04-17 13:51:34 +0200 fs r270940 : #i101153# only localize the (potentially) localizable properties when there really is support at the control model
2009-04-17 11:43:14 +0200 fs r270932 : removed superfluous include
2009-04-17 10:10:15 +0200 fs r270926 : #i10000#
2009-04-17 10:02:36 +0200 fs r270925 : #i10000#
2009-04-17 09:15:13 +0200 fs r270918 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
2009-04-17 09:14:56 +0200 fs r270917 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
2009-04-17 09:13:25 +0200 fs r270915 : #i99056# some more refactoring of the recently introduced property change notification mechanism for UNO shapes
2009-04-17 08:30:34 +0200 fs r270914 : removed unotools/servicehelper.hxx in favour of the (duplicated) comphelper/servicehelper.hxx
2009-04-16 21:05:25 +0200 fs r270903 : #i10000#
2009-04-16 20:43:43 +0200 fs r270902 : #i99056# shape notification outsourced to the SdrObject, this is what all other shape implementations (which only aggregate an SvxShape) have access to, too
2009-04-16 15:57:36 +0200 fs r270891 : #i99056# make SetUnoControlModel virtual
2009-04-16 15:44:02 +0200 fs r270890 : #i99056# let the ScShapeObj notify changes in its Anchor property
2009-04-16 15:36:47 +0200 fs r270889 : #i99056# enable the sheet anchor type property, too
2009-04-16 15:33:45 +0200 fs r270887 : #i99056# shape notification outsourced to the SdrObject, this is what all other shape implementations (which only aggregate an SvxShape) have access to, too
2009-04-15 14:53:13 +0200 fs r270844 : #i10000#
2009-04-15 13:08:29 +0200 fs r270836 : #i10000#
2009-04-15 12:28:14 +0200 fs r270832 : #i10000#
2009-04-15 10:59:14 +0200 fs r270827 : #i10000#
2009-04-15 09:41:08 +0200 oj r270823 : fix issues found with findbugs and pmd
2009-04-14 21:08:04 +0200 fs r270808 : #i99056# implement SheetAnchorType - now the only thing missing to enable it is the proper notification when it is modified
2009-04-14 17:09:00 +0200 fs r270799 : #i99056# implement XServiceInfo for the ScShapeObj
2009-04-14 17:07:55 +0200 fs r270798 : #i99056# implement TextAnchorType, partially implement SheetAnchorType
2009-04-14 15:54:05 +0200 fs r270786 : #i99056# SwXShape: notify changes of the AnchorType property
2009-04-14 15:47:32 +0200 fs r270785 : #i99056# deliver shapepropertynotifier.hxx
2009-04-14 15:46:54 +0200 fs r270784 : diagnostics
2009-04-14 15:08:28 +0200 fs r270781 : #i99056# outsourced the SvxShape's property change notification code into a dedicated class
2009-04-14 14:41:09 +0200 fs r270773 : #i99056# outsourced the SvxShape's property change notification code into a dedicated class
2009-04-14 14:37:23 +0200 fs r270772 : in dtor, remove the properties from the temporary component context
2009-04-14 14:36:34 +0200 fs r270771 : getWeakUnoShape made const
2009-04-14 12:23:08 +0200 oj r270757 : #i101064# add missing braces
2009-04-14 12:21:25 +0200 oj r270756 : #i101065# add braces for gcc 4.3.2
2009-04-14 12:17:45 +0200 oj r270755 : #i101059# add dep for manifest
2009-04-09 12:06:58 +0200 oj r270686 : #i93100# use OptimalSize from control to get height
2009-04-08 09:56:55 +0200 oj r270619 : #i92537# handle calculations in the select columns as well
2009-04-08 09:30:39 +0200 oj r270615 : #i96657# throw error message when the key doesn't have any columns
2009-04-07 12:08:26 +0200 oj r270592 : #i77501# impl preview of the executed report
2009-04-07 12:01:56 +0200 oj r270591 : #i77501# impl preview of the executed report
2009-04-07 11:41:03 +0200 oj r270590 : #i77501# impl preview of the executed report
2009-04-07 11:39:32 +0200 oj r270589 : #i77501# impl preview of the executed report
2009-04-07 11:29:25 +0200 oj r270588 : #i77501# convert dos to unix lineends
2009-04-07 11:28:23 +0200 oj r270587 : #i77501# impl preview of the executed report
2009-04-07 11:16:50 +0200 oj r270586 : #i77501# impl preview of the executed report
2009-04-07 11:16:00 +0200 oj r270585 : #i77501# impl preview of the executed report
2009-04-07 11:15:44 +0200 oj r270584 : #i77501# impl preview of the executed report
2009-04-07 11:15:28 +0200 oj r270583 : #i77501# impl preview of the executed report
2009-04-07 11:15:04 +0200 oj r270582 : #i77501# impl preview of the executed report
2009-04-06 15:38:54 +0200 fs r270559 : merge changes from CWS dba32a herein
2009-04-03 15:56:16 +0200 fs r270494 : ImpSvMEdit::Resize: do multiple iterations, if necessary
2009-04-03 14:35:49 +0200 fs r270487 : #i10000#
2009-04-03 13:17:16 +0200 fs r270476 : #i99056# display geometry information for controls, too
2009-04-03 13:16:37 +0200 fs r270475 : #i99056# better ordering of the geometry properties
2009-04-03 13:16:07 +0200 fs r270473 : #i99056# now that SvxShape supports property change listeners, forward add/remove requests to it
2009-04-03 13:13:18 +0200 fs r270472 : #i99056# at SvxShape, allow for PropertyChangeListeners for Size/Position
2009-04-03 09:29:27 +0200 oj r270456 : #i94571# use correct prop name
2009-04-03 09:14:54 +0200 fs r270451 : merge changes from CWS dba32a herein
2009-04-02 17:00:51 +0200 fs r270424 : better diagnostics
2009-04-02 16:35:19 +0200 fs r270421 : diagnostics
2009-04-02 16:34:50 +0200 fs r270420 : #i99056# mxUnoShape not accessible anymore, use impl_setUnoShape instead
2009-04-02 16:32:48 +0200 fs r270419 : #i99056# make getUnoShape cheaper: keep the pointer to the SvxShape all the time, so there's no need to ask for it in getUnoShape. As a consequence, we will later be able to use the pointer in scenarious where performance (potentially) matters
2009-04-02 16:31:13 +0200 fs r270417 : merge changes from CWS dba32a herein
2009-04-02 16:23:16 +0200 fs r270414 : merge changes from CWS dba32a herein
2009-04-02 14:10:35 +0200 fs r270405 : #i10000#
2009-04-02 14:06:26 +0200 fs r270404 : merge changes from CWS dba32a herein
2009-04-02 14:03:03 +0200 fs r270401 : #i10000#
2009-04-02 13:58:13 +0200 fs r270400 : #i10000#
2009-04-02 12:59:44 +0200 fs r270397 : merge changes from CWS dba32a herein
2009-04-02 12:46:30 +0200 fs r270396 : #i99056# let the form page maintain a mapping between control models and control shapes
2009-04-02 12:44:07 +0200 fs r270395 : merge changes from CWS dba32a herein
2009-04-02 12:42:06 +0200 fs r270394 : merge changes from CWS dba32a herein
2009-04-02 12:35:20 +0200 fs r270393 : #i10000# precompiled header
2009-04-02 12:05:31 +0200 fs r270392 : merge changes from CWS dba32a herein
2009-04-02 12:00:42 +0200 fs r270391 : merge changes from CWS dba32a herein
2009-04-02 11:47:26 +0200 fs r270390 : merge changes from CWS dba32a herein
2009-04-02 11:39:15 +0200 oj r270389 : #i94467# foxpro impl several new types
2009-04-02 11:35:58 +0200 fs r270387 : merge changes from CWS dba32a herein
2009-04-01 14:10:51 +0200 fs r270329 : merge changes from CWS dba32a herein
2009-03-31 17:29:50 +0200 fs r270290 : merge changes from CWS dba32a herein
2009-03-30 14:53:56 +0200 fs r270233 : #i100417# don't set grid column widths to 0, but to <void/>
2009-03-30 12:31:03 +0200 oj r270213 : #i100552# wrong orb used
2009-03-30 12:19:20 +0200 oj r270212 : #i98303# convertlike corrected to sal_Unicode
2009-03-30 11:58:25 +0200 fs r270210 : merge changes from CWS dba32a herein
2009-03-30 11:38:16 +0200 oj r270205 : remove duplicate code from merge
2009-03-30 11:02:27 +0200 fs r270202 : merge changes from CWS dba32a herein
2009-03-30 11:02:19 +0200 fs r270201 : merge changes from CWS dba32a herein
2009-03-30 10:31:26 +0200 oj r270200 : #i100665# only throw exception and do not drop table
2009-03-30 09:36:24 +0200 fs r270195 : assertion text
2009-03-28 20:21:58 +0100 fs r270187 : #ii10000#
2009-03-28 20:19:54 +0100 fs r270186 : removed unused help ids
2009-03-28 20:19:40 +0100 fs r270185 : removed unused help ids
2009-03-28 20:19:10 +0100 fs r270184 : #i100237# +DefaultState/XReset
2009-03-28 00:29:29 +0100 fs r270177 : CWS-TOOLING: rebase CWS dba32b to trunk@270033 (milestone: DEV300:m45)
2009-03-27 22:56:46 +0100 fs r270173 : #i100237# DEFAULT_CHECKED -> DEFAULT_STATE
2009-03-27 22:55:52 +0100 fs r270172 : #i100237# DefaultState property for buttons, enabled only when Toggle=Yes
2009-03-27 22:54:15 +0100 fs r270171 : #i100237# DEFAULT_CHECKED -> DEFAULT_STATE
2009-03-27 22:53:54 +0100 fs r270170 : #i100237# introduce a DefaultState property for buttons, which implies buttongs supporting XReset, which needed some refactoring
2009-03-27 13:31:41 +0100 fs r270152 : ignore output paths
2009-03-27 11:23:44 +0100 fs r270139 : tuned behavior with respect to invalid keys/values
2009-03-27 09:57:14 +0100 fs r270136 : don't allow Double.NaN
2009-03-27 09:56:16 +0100 fs r270135 : talk about Double.NaN
2009-03-26 12:14:30 +0100 fs r270067 : removed unused parameter
2009-03-26 12:14:02 +0100 fs r270066 : removed widening conversion when checking keys
2009-03-26 09:17:34 +0100 fs r270053 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
2009-03-26 09:17:11 +0100 fs r270052 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
2009-03-26 09:16:49 +0100 fs r270051 : separated the enumerator functionality into a dedicated interface, this way not burdening XMap with it
2009-03-25 21:55:20 +0100 fs r270044 : #i100541# properly calculat bNeedScrollBox
2009-03-25 12:56:17 +0100 fs r270019 : renamed the previously introduced error condition
2009-03-25 12:11:48 +0100 fs r270015 : #i100095# when the error messages contain non-trivial details (SQLState/ErrorCode), then always display the 'Details' button
2009-03-25 12:10:05 +0100 fs r270012 : renamed the previously introduced error condition
2009-03-25 12:01:04 +0100 fs r270011 : #i100095# when no address book (or respective profile) can be found, then use a dedicated ErrorCondition
2009-03-25 10:29:07 +0100 fs r270003 : add missing localization
2009-03-25 10:23:12 +0100 fs r270001 : in preparation of #i1000095#:
rework the error handling, allow using css.sdb.ErrorCondition values, plus
allow propagating the nsresult
2009-03-25 10:21:55 +0100 fs r270000 : in preparation of #i1000095#:
rework the error handling, allow using css.sdb.ErrorCondition values, plus
allow propagating the nsresult
2009-03-20 23:05:38 +0100 fs r269829 : XMap::getSize removed
2009-03-20 23:05:19 +0100 fs r269828 : changes as suggested by sb
2009-03-20 23:04:56 +0100 fs r269827 : enhanced documentation
2009-03-20 15:31:40 +0100 fs r269815 : changes as suggested by sb
2009-03-20 13:23:52 +0100 oj r269804 : #i92538# correct the zorder that fixedtext is infront of control
2009-03-20 12:59:38 +0100 oj r269801 : #i94571# paraadjust now supports BLOCK
2009-03-20 12:58:11 +0100 oj r269800 : #i94571# export style with data style
2009-03-20 12:57:05 +0100 oj r269799 : #i94571# text align is now paraadjust
2009-03-20 12:37:02 +0100 fs r269797 : enum keys only accepted if they have the exact type, not if they have *any* enum type
2009-03-20 12:28:31 +0100 fs r269794 : some changes requested by sb
2009-03-20 08:52:47 +0100 fs r269780 : doc
2009-03-20 07:37:31 +0100 oj r269779 : #i99913# only notifiy when values are different
2009-03-20 07:36:58 +0100 oj r269778 : #i99913# add undoenv as listener at the dataprovider
2009-03-19 22:52:52 +0100 fs r269771 : added comment
2009-03-19 22:40:06 +0100 fs r269770 : +testEnumeration
2009-03-19 22:39:41 +0100 fs r269769 : implemented enumeration, getKeySet, and getValues. Should be finished now.
2009-03-19 14:01:01 +0100 oj r269743 : #i99913# reset the modified state when selecting an object
2009-03-19 12:19:54 +0100 lla r269739 : #i72390# cleanups
2009-03-19 09:25:27 +0100 fs r269727 : #i10000#
2009-03-18 23:37:02 +0100 fs r269708 : extended checks for value type acceptance
2009-03-18 23:36:41 +0100 fs r269707 : fixed value type checks
2009-03-18 14:59:56 +0100 fs r269678 : initial complex test case for the new css.container.Map implementation
2009-03-18 14:59:24 +0100 fs r269677 : verifyExpectedException moved to base class (in complexlib), and renamed to assureException for consistency
2009-03-18 14:58:35 +0100 fs r269676 : removed unused imports
2009-03-18 14:58:03 +0100 fs r269675 : first implementation of the new css.container.Map service (not completed, yet)
2009-03-18 14:57:17 +0100 fs r269674 : base class for UNO components, freeing you from some repeating work
2009-03-18 14:55:53 +0100 fs r269672 : +assureException: call a given method with given parameters on a given object, ensure that a given exception is thrown by the method implementation
2009-03-18 14:54:58 +0100 fs r269671 : +getComponentContext
2009-03-18 14:54:00 +0100 fs r269670 : isEmpty returns a boolean, not a long
2009-03-18 14:14:43 +0100 oj r269663 : #i99743# now text also supports null
2009-03-18 13:54:14 +0100 oj r269660 : #i99223# remove check for 2 params
2009-03-18 13:33:35 +0100 oj r269659 : #i99060# replace text::ParagraphVertAlign with style::VerticalAlignment
2009-03-18 13:32:18 +0100 oj r269658 : #i99060# don't set void property when void isn't allowed
2009-03-18 13:31:11 +0100 oj r269657 : #i99060# handle vertical alignment
2009-03-18 13:28:28 +0100 oj r269656 : #i99060# remove unused elements from sytle
2009-03-18 09:35:42 +0100 lla r269639 : #i72390# cleanups
2009-03-18 09:31:20 +0100 lla r269638 : #i72390# add ButtonList
2009-03-18 09:30:46 +0100 lla r269637 : #i72390# renamed interface
2009-03-18 09:30:15 +0100 lla r269636 : #i72390# use ButtonList instead of ImageList
2009-03-18 09:29:05 +0100 lla r269635 : #i72390# new ButtonList, cleanups
2009-03-18 09:26:34 +0100 lla r269634 : #i72390# cleanups
2009-03-17 12:21:20 +0100 oj r269590 : #i99222# remove assertion
2009-03-17 12:17:22 +0100 oj r269589 : #i98605# impl scale mode
2009-03-17 12:10:42 +0100 oj r269588 : #i98605# impl scale mode
2009-03-17 11:40:15 +0100 oj r269584 : #i96944# doesn't create equation for shapes
2009-03-17 11:33:16 +0100 oj r269583 : #i96423# switch calc from float to long
2009-03-16 15:19:18 +0100 fs r269550 : #i41930# enable zoom for embedded/outplace documents
2009-03-16 14:25:54 +0100 oj r269542 : #i93734# remove ContextSensitive
2009-03-16 14:21:58 +0100 oj r269541 : #i99274# page header before group header
2009-03-16 14:18:23 +0100 oj r269539 : #i99110# fix value type
2009-03-16 14:14:16 +0100 fs r269537 : line ends
2009-03-16 14:11:06 +0100 fs r269535 : line ends
2009-03-16 14:08:34 +0100 fs r269534 : #i100087# (provided my np): allow for polymorphic types with more than one parameter
2009-03-16 12:30:31 +0100 oj r269521 : compile error
2009-03-16 12:19:12 +0100 oj r269519 : compile error
2009-03-16 10:39:28 +0100 oj r269511 : compile error under linux with swap
2009-03-13 10:33:04 +0100 oj r269462 : CWS-TOOLING: rebase CWS dba32b to trunk@269297 (milestone: DEV300:m43)
2009-03-12 14:37:25 +0100 fs r269416 : interface SequenceOutputStreamTest is unneeded, and pollutes the namespace here :)
2009-03-12 14:35:07 +0100 fs r269414 : not needed
2009-03-12 14:34:15 +0100 fs r269413 : preparation for multiple tests in this module
2009-03-12 14:33:02 +0100 fs r269412 : ShowTargets was moved from module integration.forms to module complexlib
2009-03-12 14:32:48 +0100 fs r269411 : helper class for projects containing multiple complex test cases (and following a certain structure)
2009-03-12 14:00:14 +0100 fs r269407 : proper module after the move
2009-03-12 13:59:10 +0100 fs r269406 : superseded by ../makefile.mk
2009-03-12 13:47:38 +0100 fs r269403 : not needed anymore
2009-03-12 13:45:46 +0100 fs r269402 : moved, in preparation of adding more test cases here, with a common infrastructure
2009-03-12 13:45:07 +0100 fs r269401 : moved from ../
2009-03-12 13:43:59 +0100 fs r269400 : moved to ./comphelper, in preparation of adding more test cases here, with a common infrastructure
2009-03-12 13:29:47 +0100 oj r269396 : #i99914# set parent on dataprovider
2009-03-12 13:10:35 +0100 oj r269393 : #i99832# check thrown exception and show error
2009-03-12 13:08:10 +0100 fs r269392 : reorganizing tests
2009-03-12 12:52:55 +0100 oj r269390 : #i99118# convert formatkey in numberformat
2009-03-12 12:34:53 +0100 fs r269388 : new API tests
2009-03-12 12:29:05 +0100 fs r269386 : Map not yet committed
2009-03-12 12:28:36 +0100 fs r269385 : oops, forgot the SequenceInputStream during the previous refactoring
2009-03-12 12:12:39 +0100 oj r269384 : #i99104# set HasCategories prop
2009-03-12 12:12:08 +0100 oj r269383 : #i99104# check HasCategories even for internal dataprovider
2009-03-12 12:10:40 +0100 oj r269382 : #i99104# set HasCategories prop
2009-03-12 10:51:49 +0100 fs r269373 : #i10000# exception specifications
2009-03-12 10:49:18 +0100 fs r269372 : #i10000# exception specifications
2009-03-12 10:44:02 +0100 fs r269371 : #i10000# exception specifications
2009-03-12 10:30:55 +0100 fs r269368 : refactored the UNO service registration in this module, using the helper classes provided by comphelper itself, so you have less effort when extending the list of to-be-registered components
2009-03-12 10:30:37 +0100 fs r269367 : module-local includes
2009-03-12 07:05:54 +0100 oj r269357 : #i99104# database dataprovider doesn't need dataranges and diagramdata
2009-03-11 10:58:28 +0100 oj r269306 : #i99911# check if name of the report is a valid file name
2009-03-11 10:03:23 +0100 oj r269299 : #i99666# the report is new when the HierarchicalDocumentName is empty
2009-03-10 11:32:45 +0100 oj r269258 : #i99221# use fallback for language
2009-03-10 10:48:40 +0100 oj r269255 : #i99433# now use OStringBuffer
2009-03-10 10:36:21 +0100 fs r269252 : initial version of (X)Map
2009-03-10 09:52:23 +0100 oj r269246 : #i99433# now use OStringBuffer
2009-03-10 08:56:13 +0100 oj r269240 : #i99655# patch applied
2009-03-09 07:35:33 +0100 lla r269058 : #i10000# wrong variable assignment fixed
2009-03-06 17:20:40 +0100 fs r269030 : some explicit defaults
2009-03-06 17:20:30 +0100 fs r269029 : #i98600#
2009-03-06 14:40:34 +0100 fs r269009 : #i87692# during reload, prevent the document being modified just because of some control content changes ...
2009-03-06 12:52:20 +0100 lla r268997 : #i10000# ambigous problem with FontWeight fixed
2009-03-06 11:39:32 +0100 fs r268989 : #i10000# (approved by pl): use --without-t1-library configure option
2009-03-06 10:55:43 +0100 fs r268986 : #i99953# depends on xmlscript module now
2009-03-06 10:54:04 +0100 fs r268985 : #i99953# also adjust the event names found in dialogs embedded in the forms
2009-03-06 09:53:41 +0100 fs r268977 : #i10000#
2009-03-06 09:30:41 +0100 lla r268973 : #i10000# merge problems
2009-03-05 17:52:34 +0100 fs r268932 : #i98593# for sub components which are actually controlled by a DocumentDefinition (aka XComponentSupplier aka XCommandProcessor), close them by executing the 'close' command, not by suspending/closing the controller (which cannot be intercepted)
2009-03-05 11:41:56 +0100 fs r268889 : default the drop down line count for list/combo boxes to 20
2009-03-05 11:39:10 +0100 fs r268887 : do not display empty error messages
2009-03-02 10:13:57 +0100 lla r268639 : #i91541# CWS rebase m41 to m42
2009-03-02 09:06:27 +0100 lla r268635 : #i10000# add ';' to strings
2009-02-26 11:18:00 +0100 fs r268492 : reportdesign depends on REPORTBUILDER, not REPORTDESIGN
2009-02-26 10:11:38 +0100 lla r268489 : CWS-TOOLING: rebase CWS dba32b to trunk@268395 (milestone: DEV300:m42)
2009-02-26 09:04:11 +0100 lla r268488 : CWS-TOOLING: rebase CWS dba32b to trunk@268395 (milestone: DEV300:m42)
2009-02-24 12:09:13 +0100 lla r268392 : #i91541# #i91542# cleanups
2009-02-24 08:08:06 +0100 lla r268382 : merge all dba32a changes into dba32b
2009-02-24 07:14:55 +0100 lla r268381 : merge all dba32a changes into dba32b
2009-02-23 21:44:28 +0100 fs r268377 : oops ... don't tamper with m_aListSourceValues at the end of loadData
2009-02-23 20:57:05 +0100 fs r268376 : #i98162# don't hold the values as strings, but as ORowSetValue, this way preserving their type, and being agnostic to different result/rowset implementations doing different to-string-conversations
2009-02-23 20:55:44 +0100 fs r268375 : getObject: throwFunctionNotSupportedException, instead of silently returning NULL
2009-02-23 20:55:20 +0100 fs r268374 : #i98162# some more supported types
2009-02-23 20:54:43 +0100 fs r268373 : #i98162# +operator !=
2009-02-20 09:35:39 +0100 fs r268306 : #i99422# for a font, display the font name, the style, and the size
2009-02-20 09:33:45 +0100 fs r268305 : #i99422# in the property browser, FONT supersedes CHARFONTNAME: the aggregated FormComponentHandler displays them more nicely now
2009-02-19 16:12:06 +0100 fs r268293 : #i99372# recognize DataType::FLOAT as numeric
2009-02-19 15:43:12 +0100 fs r268291 : #i99415#
2009-02-19 15:40:15 +0100 fs r268290 : #i99242# lcl_firstFocussableControl: take disabled controls into account
2009-02-19 15:34:36 +0100 fs r268289 : #i99396# properly decode the base name of the URL when using it as title
2009-02-19 15:19:05 +0100 fs r268287 : #i98247#
2009-06-05 09:47:55 +00:00
ImplCheckLocalize ( sText ) ;
2007-07-18 07:43:55 +00:00
xPF - > setString ( sText ) ;
2000-11-03 12:55:40 +00:00
xPF - > setMasks ( EditMask , LiteralMask ) ;
}
2000-09-18 16:07:07 +00:00
}
else
2002-09-05 07:54:42 +00:00
UnoSpinFieldControl : : ImplSetPeerProperty ( rPropName , rVal ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
// uno::XInterface
uno : : Any UnoPatternFieldControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XPatternField * , this ) ) ;
2002-09-05 06:53:00 +00:00
return ( aRet . hasValue ( ) ? aRet : UnoSpinFieldControl : : queryAggregation ( rType ) ) ;
2000-09-18 16:07:07 +00:00
}
2001-01-24 14:00:58 +00:00
// lang::XTypeProvider
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_START ( UnoPatternFieldControl )
2001-01-24 14:00:58 +00:00
getCppuType ( ( uno : : Reference < awt : : XPatternField > * ) NULL ) ,
2002-09-05 06:53:00 +00:00
UnoSpinFieldControl : : getTypes ( )
2000-09-18 16:07:07 +00:00
IMPL_XTYPEPROVIDER_END
2001-01-24 14:00:58 +00:00
void UnoPatternFieldControl : : setString ( const : : rtl : : OUString & rString ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
setText ( rString ) ;
}
2001-01-24 14:00:58 +00:00
: : rtl : : OUString UnoPatternFieldControl : : getString ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return getText ( ) ;
}
2001-01-24 14:00:58 +00:00
void UnoPatternFieldControl : : setMasks ( const : : rtl : : OUString & EditMask , const : : rtl : : OUString & LiteralMask ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = EditMask ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_EDITMASK ) , aAny , sal_True ) ;
aAny < < = LiteralMask ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_LITERALMASK ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
void UnoPatternFieldControl : : getMasks ( : : rtl : : OUString & EditMask , : : rtl : : OUString & LiteralMask ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
EditMask = ImplGetPropertyValue_UString ( BASEPROPERTY_EDITMASK ) ;
LiteralMask = ImplGetPropertyValue_UString ( BASEPROPERTY_LITERALMASK ) ;
}
2001-01-24 14:00:58 +00:00
void UnoPatternFieldControl : : setStrictFormat ( sal_Bool bStrict ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
2001-01-24 14:00:58 +00:00
uno : : Any aAny ;
2000-09-18 16:07:07 +00:00
aAny < < = bStrict ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_STRICTFORMAT ) , aAny , sal_True ) ;
}
2001-01-24 14:00:58 +00:00
sal_Bool UnoPatternFieldControl : : isStrictFormat ( ) throw ( uno : : RuntimeException )
2000-09-18 16:07:07 +00:00
{
return ImplGetPropertyValue_BOOL ( BASEPROPERTY_STRICTFORMAT ) ;
}
2001-04-26 08:09:16 +00:00
// ----------------------------------------------------
// class UnoControlProgressBarModel
// ----------------------------------------------------
UnoControlProgressBarModel : : UnoControlProgressBarModel ( )
{
ImplRegisterProperty ( BASEPROPERTY_BACKGROUNDCOLOR ) ;
ImplRegisterProperty ( BASEPROPERTY_BORDER ) ;
2004-07-05 14:57:14 +00:00
ImplRegisterProperty ( BASEPROPERTY_BORDERCOLOR ) ;
2001-04-26 08:09:16 +00:00
ImplRegisterProperty ( BASEPROPERTY_DEFAULTCONTROL ) ;
2001-05-04 12:23:35 +00:00
ImplRegisterProperty ( BASEPROPERTY_ENABLED ) ;
2001-04-26 08:09:16 +00:00
ImplRegisterProperty ( BASEPROPERTY_FILLCOLOR ) ;
ImplRegisterProperty ( BASEPROPERTY_HELPTEXT ) ;
ImplRegisterProperty ( BASEPROPERTY_HELPURL ) ;
2001-05-02 14:21:44 +00:00
ImplRegisterProperty ( BASEPROPERTY_PRINTABLE ) ;
2001-04-26 08:09:16 +00:00
ImplRegisterProperty ( BASEPROPERTY_PROGRESSVALUE ) ;
ImplRegisterProperty ( BASEPROPERTY_PROGRESSVALUE_MAX ) ;
ImplRegisterProperty ( BASEPROPERTY_PROGRESSVALUE_MIN ) ;
}
2000-09-18 16:07:07 +00:00
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlProgressBarModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2001-04-26 08:09:16 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlProgressBarModel ) ;
}
uno : : Any UnoControlProgressBarModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
uno : : Any aAny ;
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlProgressBar ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlProgressBarModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlProgressBarModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
{
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
return xInfo ;
}
// ----------------------------------------------------
// class UnoProgressBarControl
// ----------------------------------------------------
UnoProgressBarControl : : UnoProgressBarControl ( )
{
}
: : rtl : : OUString UnoProgressBarControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " ProgressBar " ) ;
}
// uno::XInterface
uno : : Any UnoProgressBarControl : : queryAggregation ( const uno : : Type & rType ) throw ( uno : : RuntimeException )
{
uno : : Any aRet = : : cppu : : queryInterface ( rType ,
SAL_STATIC_CAST ( awt : : XProgressBar * , this ) ) ;
return ( aRet . hasValue ( ) ? aRet : UnoControlBase : : queryAggregation ( rType ) ) ;
}
// lang::XTypeProvider
IMPL_XTYPEPROVIDER_START ( UnoProgressBarControl )
getCppuType ( ( uno : : Reference < awt : : XProgressBar > * ) NULL ) ,
UnoControlBase : : getTypes ( )
IMPL_XTYPEPROVIDER_END
// ::com::sun::star::awt::XProgressBar
void UnoProgressBarControl : : setForegroundColor ( sal_Int32 nColor ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
uno : : Any aAny ;
aAny < < = nColor ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_FILLCOLOR ) , aAny , sal_True ) ;
}
void UnoProgressBarControl : : setBackgroundColor ( sal_Int32 nColor ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
uno : : Any aAny ;
aAny < < = nColor ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_BACKGROUNDCOLOR ) , aAny , sal_True ) ;
}
void UnoProgressBarControl : : setValue ( sal_Int32 nValue ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
uno : : Any aAny ;
aAny < < = nValue ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_PROGRESSVALUE ) , aAny , sal_True ) ;
}
void UnoProgressBarControl : : setRange ( sal_Int32 nMin , sal_Int32 nMax ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
uno : : Any aMin ;
uno : : Any aMax ;
if ( nMin < nMax )
{
// take correct min and max
aMin < < = nMin ;
aMax < < = nMax ;
}
else
{
// change min and max
aMin < < = nMax ;
aMax < < = nMin ;
}
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_PROGRESSVALUE_MIN ) , aMin , sal_True ) ;
ImplSetPropertyValue ( GetPropertyName ( BASEPROPERTY_PROGRESSVALUE_MAX ) , aMax , sal_True ) ;
}
sal_Int32 UnoProgressBarControl : : getValue ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
{
return ImplGetPropertyValue_INT32 ( BASEPROPERTY_PROGRESSVALUE ) ;
2001-05-02 11:31:11 +00:00
}
2001-05-04 08:04:05 +00:00
// ----------------------------------------------------
// class UnoControlFixedLineModel
// ----------------------------------------------------
UnoControlFixedLineModel : : UnoControlFixedLineModel ( )
{
2007-11-26 15:27:53 +00:00
ImplRegisterProperty ( BASEPROPERTY_BACKGROUNDCOLOR ) ;
2001-05-04 08:04:05 +00:00
ImplRegisterProperty ( BASEPROPERTY_DEFAULTCONTROL ) ;
ImplRegisterProperty ( BASEPROPERTY_ENABLED ) ;
ImplRegisterProperty ( BASEPROPERTY_FONTDESCRIPTOR ) ;
ImplRegisterProperty ( BASEPROPERTY_HELPTEXT ) ;
ImplRegisterProperty ( BASEPROPERTY_HELPURL ) ;
ImplRegisterProperty ( BASEPROPERTY_LABEL ) ;
ImplRegisterProperty ( BASEPROPERTY_ORIENTATION ) ;
ImplRegisterProperty ( BASEPROPERTY_PRINTABLE ) ;
}
2001-05-11 06:59:47 +00:00
: : rtl : : OUString UnoControlFixedLineModel : : getServiceName ( ) throw ( : : com : : sun : : star : : uno : : RuntimeException )
2001-05-04 08:04:05 +00:00
{
return : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFixedLineModel ) ;
}
uno : : Any UnoControlFixedLineModel : : ImplGetDefaultValue ( sal_uInt16 nPropId ) const
{
if ( nPropId = = BASEPROPERTY_DEFAULTCONTROL )
{
uno : : Any aAny ;
aAny < < = : : rtl : : OUString : : createFromAscii ( szServiceName_UnoControlFixedLine ) ;
return aAny ;
}
return UnoControlModel : : ImplGetDefaultValue ( nPropId ) ;
}
: : cppu : : IPropertyArrayHelper & UnoControlFixedLineModel : : getInfoHelper ( )
{
static UnoPropertyArrayHelper * pHelper = NULL ;
if ( ! pHelper )
{
uno : : Sequence < sal_Int32 > aIDs = ImplGetPropertyIds ( ) ;
pHelper = new UnoPropertyArrayHelper ( aIDs ) ;
}
return * pHelper ;
}
// beans::XMultiPropertySet
uno : : Reference < beans : : XPropertySetInfo > UnoControlFixedLineModel : : getPropertySetInfo ( ) throw ( uno : : RuntimeException )
{
static uno : : Reference < beans : : XPropertySetInfo > xInfo ( createPropertySetInfo ( getInfoHelper ( ) ) ) ;
return xInfo ;
}
// ----------------------------------------------------
// class UnoFixedLineControl
// ----------------------------------------------------
UnoFixedLineControl : : UnoFixedLineControl ( )
{
maComponentInfos . nWidth = 100 ; // ??
maComponentInfos . nHeight = 100 ; // ??
}
: : rtl : : OUString UnoFixedLineControl : : GetComponentServiceName ( )
{
return : : rtl : : OUString : : createFromAscii ( " FixedLine " ) ;
}
sal_Bool UnoFixedLineControl : : isTransparent ( ) throw ( uno : : RuntimeException )
{
return sal_True ;
}