2010-10-14 08:27:31 +02:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
re-base on ALv2 code. Includes (at least) relevant parts of:
linecap: Reintegrating finished LineCap feature
Patch contributed by Regina Henschel
http://svn.apache.org/viewvc?view=revision&revision=1232507
Patches contributed by Sven Jacobi
impress212: #i81610# fixed animation export
http://svn.apache.org/viewvc?view=revision&revision=1167620
impress212: drawinglayer gbuild environment changes
http://svn.apache.org/viewvc?view=revision&revision=1167627
http://svn.apache.org/viewvc?view=revision&revision=1167628
impress212: DffPropSet -> minor code improvements, removing table
http://svn.apache.org/viewvc?view=revision&revision=1167634
impress212: #158494# fixed excel import (text rotation)
http://svn.apache.org/viewvc?view=revision&revision=1167638
Patches contributed by Armin Le Grand
Svg: Reintegrated Svg replacement from /branches/alg/svgreplavement
http://svn.apache.org/viewvc?view=revision&revision=1220836
#118728# changed indentifying definitions for Svg file detection
http://svn.apache.org/viewvc?view=revision&revision=1229961
#118838# LineGeometry creation for complicated cases optimized to
create single Polygons
http://svn.apache.org/viewvc?view=revision&revision=1236232
#119176# corrected file type detection for SVG for svg files
without xml header
http://svn.apache.org/viewvc?view=revision&revision=1309445
#118728# Extended Svg file detection
http://svn.apache.org/viewvc?view=revision&revision=1230531
#118529# solve break converters and convert commands for OLEs and images
http://svn.apache.org/viewvc?view=revision&revision=1186168
svg: added WaE changes from branch svgreplacement to trunc
http://svn.apache.org/viewvc?view=revision&revision=1222974
svg: corrected missing member initialization
http://svn.apache.org/viewvc?view=revision&revision=1226134
fix for #118525#: Using primitives for chart sub-geometry visualisation
http://svn.apache.org/viewvc?view=revision&revision=1226879
#118898# Adapted ImpGraphic::ImplGetBitmap to correctly convert
metafiles to bitmapEx ...
http://svn.apache.org/viewvc?view=revision&revision=1293316
fix for #118525#: removed no longer used variable maOriginalMapMode, one
more exception eliminated
http://svn.apache.org/viewvc?view=revision&revision=1227097
#16758# Added buffering to the VDev usages of the VclProcessor2D derivates...
http://svn.apache.org/viewvc?view=revision&revision=1229521
#116758# Secured VDev buffer device to Vcl deinit
http://svn.apache.org/viewvc?view=revision&revision=1230574
#116758# added remembering allocated VDevs for VDevBuffer to be able to also
delete these when vcl goes down; it should never happen, but You never know
http://svn.apache.org/viewvc?view=revision&revision=1230927
#118730# Changed SvgClipPathNode to use MaskPrimitive2D for primitive
representation instead of TransparencePrimitive2D
http://svn.apache.org/viewvc?view=revision&revision=1231198
#118822# secured 3D geometry creation (slices) by subdividing the 2D
source polyPolygon early
http://svn.apache.org/viewvc?view=revision&revision=1234749
#118829# enhanced Svg gradient quality, obstacles avoided
http://svn.apache.org/viewvc?view=revision&revision=1235361
#118834# Unified usage of TextBreakupHelper as single tooling class
for i18n text primitive breakup
http://svn.apache.org/viewvc?view=revision&revision=1236110
#118853# added square pixel size limit to conversion of
TransparencePrimitive2D to Metafile action
http://svn.apache.org/viewvc?view=revision&revision=1237656
#118824# coreccted mirroring and boundrect when the graphicmanager
is used for bitmap output
http://svn.apache.org/viewvc?view=revision&revision=1240097
#115092# Corrected VclProcessor2D::RenderPolygonStrokePrimitive2D for
various optimization scenarios
http://svn.apache.org/viewvc?view=revision&revision=1241434
#118783# Corrected errors in ID strings, corrected Svg line/fill export,
corrected polygon close state
http://svn.apache.org/viewvc?view=revision&revision=1232006
#118796# corrected null-pointer usage in SVG text exporter
http://svn.apache.org/viewvc?view=revision&revision=1240262
#118729# Use GraphicStreamUrl and GraphicUrl to allow multi image
import with linked graphics, too
http://svn.apache.org/viewvc?view=revision&revision=1229962
#118898# corrected error in GDIMetaFile::GetBoundRect in handling
MetaFloatTransparentAction
http://svn.apache.org/viewvc?view=revision&revision=1293349
#118855# Corrected handling of possibly created empty clipRegions
after PolyPolygon clipping
http://svn.apache.org/viewvc?view=revision&revision=1237725
#115962# Better (but not yet optimal, see comments in task) handling
of MetaFloatTransparentAction in PDF export
http://svn.apache.org/viewvc?view=revision&revision=1241078
IP clearance: #118466# This patch removes librsvg, libcroco, libgsf, ...
http://svn.apache.org/viewvc?view=revision&revision=1200879
118779# Added svg content streaming in/out to ImpGraphic stream operators
http://svn.apache.org/viewvc?view=revision&revision=1231908
linecap: correctons for WaE and mac drawing
http://svn.apache.org/viewvc?view=revision&revision=1232793
svg: uses current system Dpi for Svg replacement image creation
http://svn.apache.org/viewvc?view=revision&revision=1233948
Patches contributed by Mathias Bauer (and others)
gnumake4 work variously
http://svn.apache.org/viewvc?view=revision&revision=1394326
http://svn.apache.org/viewvc?view=revision&revision=1396797
http://svn.apache.org/viewvc?view=revision&revision=1397315
http://svn.apache.org/viewvc?view=revision&revision=1394326
Remove duplicate header includes.
cws mba34issues01: #i117720#: convert assertion into warning
http://svn.apache.org/viewvc?view=revision&revision=1172352
118485 - Styles for OLEs are not saved. Submitted by Armin Le Grand.
http://svn.apache.org/viewvc?view=revision&revision=1182166
cws mba34issues01: #i117714#: remove assertion
http://svn.apache.org/viewvc?view=revision&revision=1172357
Patch contributed by Jurgen Schmidt
add some additional checks to ensure proper reading operations
http://svn.apache.org/viewvc?view=revision&revision=1209022
mostly prefer our stream / bounds checking work.
Patches contributed by Herbert Duerr
#i118816# add clarifying comment regarding Font::*Color*() methods
http://svn.apache.org/viewvc?view=revision&revision=1233833
extend macro->string handling for empty strings
http://svn.apache.org/viewvc?view=revision&revision=1175801
avoid magic constants for SALCOLOR_NONE
http://svn.apache.org/viewvc?view=revision&revision=1177543
initialize slant properly in ImplFontMetricData constructor (author=iorsh)
http://svn.apache.org/viewvc?view=revision&revision=1177551
#i118675# make check for extension updates more stable
http://svn.apache.org/viewvc?view=revision&revision=1214797
#a118617# remove VBasicEventListener.dll binary
There are no known users depending on its CLSID
http://svn.apache.org/viewvc?view=revision&revision=1203697
Patches contributed by Ariel Constenla-Haile
Fix build breaker on Linux/gcc
http://svn.apache.org/viewvc?view=revision&revision=1221104
Fix crash when trying to instantiate css.graphic.GraphicRasterizer_RSVG
http://svn.apache.org/viewvc?view=revision&revision=1215559
Patches contributed by Oliver-Rainer Wittmann
sw34bf06: #i117962# - method <SwFlyFrm::IsPaint(..)> - consider
instances of <SwFlyDrawObj>
http://svn.apache.org/viewvc?view=revision&revision=1172120
sw34bf06: #i117783# - Writer's implementation of XPagePrintable -
apply print settings to new printing routines
http://svn.apache.org/viewvc?view=revision&revision=1172115
gnumake4 work variously from Hans-Joachim Lankenau
http://svn.apache.org/viewvc?view=revision&revision=1397315
http://svn.apache.org/viewvc?view=revision&revision=1396797
http://svn.apache.org/viewvc?view=revision&revision=1396782
http://svn.apache.org/viewvc?view=revision&revision=1394707
plus some amount of re-splitting of legacy headers.
Patch contributed by Pavel Janik
WaE: Remove unused variables.
http://svn.apache.org/viewvc?view=revision&revision=1230697
Patches contributed by Takashi Ono
mingwport35: i#117795: MinGW port fix for vcl2gnumake
http://svn.apache.org/viewvc?view=revision&revision=1172091
mingwport35: i#117795: MinGW port fix for vcl2gnumake
http://svn.apache.org/viewvc?view=revision&revision=1172091
Patch contributed by Christian Lippka
impress212: #i98044# re enable Text menu for outline and title shapes
http://svn.apache.org/viewvc?view=revision&revision=1167639
Patch contributed by Andre Fischer
118674: Made category B code optional and disabled by default.
http://svn.apache.org/viewvc?view=revision&revision=1215131
118881: Ignore empty paragraphs after bullets.
http://svn.apache.org/viewvc?view=revision&revision=1296205
Patches contributed by Philipp Lohmann
ooo340fixes: #i117780# use rtl allocator
http://svn.apache.org/viewvc?view=revision&revision=1172087
ooo34gsl02: #i117807# fix an off by one error (index actually
inside the pfb section header)
http://svn.apache.org/viewvc?view=revision&revision=1167576
various cleanups, related compilation fixes, warning cleanups, re-working
of obsolete stl template pieces to use boost instead, changed string
classes, re-adapt KDE about data, about dialog, fixing warnings,
and other fixes & improvements.
Disable svg import / render for about/ branding code-paths for now.
Restore full icon theme set.
Remove OS/2 conditionals and sources.
Remove conflicting gtk/full-screen monitors support.
Retain existing svg rasterizer files - temporarily disabled.
Standardize stringificaiton and fixup dllpostfix issues.
Rename SvgGradientHelper::== to equalTo to avoid overloading issues.
Use the flat GdiPlus API for LineCaps calls.
2012-10-09 12:22:23 +01:00
|
|
|
/*
|
|
|
|
* This file is part of the LibreOffice project.
|
|
|
|
*
|
|
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*
|
|
|
|
* This file incorporates work covered by the following license notice:
|
|
|
|
*
|
|
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
* contributor license agreements. See the NOTICE file distributed
|
|
|
|
* with this work for additional information regarding copyright
|
|
|
|
* ownership. The ASF licenses this file to you under the Apache
|
|
|
|
* License, Version 2.0 (the "License"); you may not use this file
|
|
|
|
* except in compliance with the License. You may obtain a copy of
|
|
|
|
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
|
|
*/
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2013-10-23 19:10:20 +02:00
|
|
|
#ifndef INCLUDED_VCL_TOOLBOX_HXX
|
|
|
|
#define INCLUDED_VCL_TOOLBOX_HXX
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-01-29 21:54:21 -02:00
|
|
|
#include <com/sun/star/frame/XFrame.hpp>
|
2013-02-27 13:09:39 +02:00
|
|
|
#include <rsc/rsc-vcl-shared-types.hxx>
|
2007-04-11 17:15:08 +00:00
|
|
|
#include <vcl/dllapi.h>
|
|
|
|
#include <vcl/dockwin.hxx>
|
|
|
|
#include <vcl/image.hxx>
|
|
|
|
#include <vcl/timer.hxx>
|
2015-01-14 10:21:20 +01:00
|
|
|
#include <vcl/idle.hxx>
|
2012-06-14 18:12:13 +04:00
|
|
|
#include <vector>
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
class UserDrawEvent;
|
|
|
|
|
|
|
|
struct ImplToolItem;
|
|
|
|
struct ImplToolSize;
|
|
|
|
struct ImplToolBoxPrivateData;
|
|
|
|
class ImplTrackRect;
|
|
|
|
class PopupMenu;
|
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
#define TOOLBOX_CUSTOMIZE_RESIZE ((sal_uInt16)0xFFFE)
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
class VCL_DLLPUBLIC ToolBoxCustomizeEvent
|
|
|
|
{
|
|
|
|
private:
|
2015-03-09 14:29:30 +02:00
|
|
|
VclPtr<ToolBox> mpTargetBox;
|
2007-04-11 17:15:08 +00:00
|
|
|
void* mpData;
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 mnIdFrom;
|
|
|
|
sal_uInt16 mnPosTo;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
public:
|
|
|
|
ToolBoxCustomizeEvent();
|
|
|
|
ToolBoxCustomizeEvent( ToolBox* pDropBox,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nId, sal_uInt16 nPos = 0,
|
2007-04-11 17:15:08 +00:00
|
|
|
void* pUserData = NULL );
|
|
|
|
|
|
|
|
ToolBox* GetTargetBox() const { return mpTargetBox; }
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 GetTargetPos() const { return mnPosTo; }
|
|
|
|
sal_uInt16 GetSourceId() const { return mnIdFrom; }
|
2007-04-11 17:15:08 +00:00
|
|
|
void* GetData() const { return mpData; }
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsResized() const;
|
2007-04-11 17:15:08 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
inline ToolBoxCustomizeEvent::ToolBoxCustomizeEvent()
|
|
|
|
{
|
|
|
|
mpTargetBox = NULL;
|
|
|
|
mnIdFrom = 0;
|
|
|
|
mnPosTo = 0;
|
|
|
|
mpData = NULL;
|
|
|
|
}
|
|
|
|
|
|
|
|
inline ToolBoxCustomizeEvent::ToolBoxCustomizeEvent( ToolBox* pDropBox,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nId, sal_uInt16 nPos,
|
2007-04-11 17:15:08 +00:00
|
|
|
void* pUserData )
|
|
|
|
{
|
|
|
|
mpTargetBox = pDropBox;
|
|
|
|
mnIdFrom = nId;
|
|
|
|
mnPosTo = nPos;
|
|
|
|
mpData = pUserData;
|
|
|
|
}
|
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
inline bool ToolBoxCustomizeEvent::IsResized() const
|
2007-04-11 17:15:08 +00:00
|
|
|
{
|
|
|
|
if ( mnPosTo == TOOLBOX_CUSTOMIZE_RESIZE )
|
2014-02-21 12:53:51 +01:00
|
|
|
return true;
|
2007-04-11 17:15:08 +00:00
|
|
|
else
|
2014-02-21 12:53:51 +01:00
|
|
|
return false;
|
2007-04-11 17:15:08 +00:00
|
|
|
}
|
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
#define TOOLBOX_STYLE_FLAT ((sal_uInt16)0x0004)
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
#define TOOLBOX_APPEND ((sal_uInt16)0xFFFF)
|
|
|
|
#define TOOLBOX_ITEM_NOTFOUND ((sal_uInt16)0xFFFF)
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// item ids in the custom menu may not exceed this constant
|
2010-09-29 15:46:40 +08:00
|
|
|
#define TOOLBOX_MENUITEM_START ((sal_uInt16)0xE000)
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// defines for the menubutton
|
2010-09-29 15:46:40 +08:00
|
|
|
#define TOOLBOX_MENUTYPE_NONE ((sal_uInt16)0x0000) // no menu at all, scrolling by spin buttons
|
|
|
|
#define TOOLBOX_MENUTYPE_CLIPPEDITEMS ((sal_uInt16)0x0001) // menu will contain "more" indicator
|
|
|
|
#define TOOLBOX_MENUTYPE_CUSTOMIZE ((sal_uInt16)0x0002) // menu will contain "customization" and "more" indicator
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// small or large force an exact toolbox size for proper alignemnt
|
|
|
|
// dontcare will let the toolbox decide about its size
|
|
|
|
enum ToolBoxButtonSize { TOOLBOX_BUTTONSIZE_DONTCARE, TOOLBOX_BUTTONSIZE_SMALL, TOOLBOX_BUTTONSIZE_LARGE };
|
|
|
|
|
2011-12-14 10:49:10 +00:00
|
|
|
// TBX_LAYOUT_NORMAL - traditional layout, items are centered in the toolbar
|
|
|
|
// TBX_LAYOUT_LOCKVERT - special mode (currently used for calc input/formula
|
|
|
|
// bar) where item's vertical position is locked, e.g.
|
|
|
|
// toolbox is prevented from centering the items
|
|
|
|
enum ToolBoxLayoutMode { TBX_LAYOUT_NORMAL, TBX_LAYOUT_LOCKVERT };
|
2012-06-14 18:12:13 +04:00
|
|
|
|
|
|
|
struct ImplToolSize
|
|
|
|
{
|
|
|
|
long mnWidth;
|
|
|
|
long mnHeight;
|
|
|
|
sal_uInt16 mnLines;
|
|
|
|
};
|
|
|
|
|
2007-04-11 17:15:08 +00:00
|
|
|
class VCL_DLLPUBLIC ToolBox : public DockingWindow
|
|
|
|
{
|
|
|
|
friend class FloatingWindow;
|
|
|
|
friend class ImplTBDragMgr;
|
|
|
|
|
|
|
|
private:
|
|
|
|
ImplToolBoxPrivateData* mpData;
|
2012-06-14 18:12:13 +04:00
|
|
|
std::vector<ImplToolSize> maFloatSizes;
|
2007-04-11 17:15:08 +00:00
|
|
|
ImageList maImageList;
|
2014-11-18 13:07:45 +00:00
|
|
|
Idle maIdle;
|
2007-04-11 17:15:08 +00:00
|
|
|
Rectangle maUpperRect;
|
|
|
|
Rectangle maLowerRect;
|
|
|
|
Rectangle maOutDockRect;
|
|
|
|
Rectangle maInDockRect;
|
|
|
|
Rectangle maPaintRect;
|
2015-03-09 14:29:30 +02:00
|
|
|
VclPtr<FloatingWindow> mpFloatWin;
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 mnKeyModifier;
|
2007-04-11 17:15:08 +00:00
|
|
|
long mnDX;
|
|
|
|
long mnDY;
|
|
|
|
long mnMaxItemWidth; // max item width
|
|
|
|
long mnMaxItemHeight; // max item height (for standard items)
|
|
|
|
long mnWinHeight; // max window height (for window items)
|
|
|
|
long mnLeftBorder; // inner border
|
|
|
|
long mnTopBorder;
|
|
|
|
long mnRightBorder;
|
|
|
|
long mnBottomBorder;
|
|
|
|
long mnLastResizeDY;
|
|
|
|
long mnActivateCount;
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 mnLastFocusItemId;
|
|
|
|
sal_uInt16 mnFocusPos;
|
|
|
|
sal_uInt16 mnOutStyle;
|
|
|
|
sal_uInt16 mnHighItemId;
|
|
|
|
sal_uInt16 mnCurItemId;
|
|
|
|
sal_uInt16 mnDownItemId;
|
|
|
|
sal_uInt16 mnCurPos;
|
|
|
|
sal_uInt16 mnLines; // total number of toolbox lines
|
|
|
|
sal_uInt16 mnCurLine; // the currently visible line
|
|
|
|
sal_uInt16 mnCurLines; // number of lines due to line breaking
|
|
|
|
sal_uInt16 mnVisLines; // number of visible lines (for scrolling)
|
|
|
|
sal_uInt16 mnFloatLines; // number of lines during floating mode
|
|
|
|
sal_uInt16 mnDockLines;
|
|
|
|
sal_uInt16 mnConfigItem;
|
|
|
|
sal_uInt16 mnMouseClicks;
|
|
|
|
sal_uInt16 mnMouseModifier;
|
2014-01-10 12:45:57 +01:00
|
|
|
bool mbDrag:1,
|
2007-04-11 17:15:08 +00:00
|
|
|
mbSelection:1,
|
|
|
|
mbCommandDrag:1,
|
|
|
|
mbUpper:1,
|
|
|
|
mbLower:1,
|
|
|
|
mbIn:1,
|
|
|
|
mbCalc:1,
|
|
|
|
mbFormat:1,
|
|
|
|
mbFullPaint:1,
|
|
|
|
mbHorz:1,
|
|
|
|
mbScroll:1,
|
|
|
|
mbLastFloatMode:1,
|
|
|
|
mbCustomize:1,
|
|
|
|
mbCustomizeMode:1,
|
|
|
|
mbDragging:1,
|
|
|
|
mbMenuStrings:1,
|
|
|
|
mbIsShift:1,
|
|
|
|
mbIsKeyEvent:1,
|
|
|
|
mbChangingHighlight:1;
|
|
|
|
WindowAlign meAlign;
|
|
|
|
WindowAlign meDockAlign;
|
|
|
|
ButtonType meButtonType;
|
|
|
|
PointerStyle meLastStyle;
|
|
|
|
WinBits mnWinStyle;
|
2011-11-24 19:45:09 +00:00
|
|
|
ToolBoxLayoutMode meLayoutMode;
|
2015-05-05 22:43:11 +02:00
|
|
|
Link<ToolBox *, void> maClickHdl;
|
|
|
|
Link<ToolBox *, void> maDoubleClickHdl;
|
2015-05-05 23:15:53 +02:00
|
|
|
Link<ToolBox *, void> maActivateHdl;
|
2015-05-05 23:35:34 +02:00
|
|
|
Link<ToolBox *, void> maDeactivateHdl;
|
2015-05-05 22:43:11 +02:00
|
|
|
Link<ToolBox *, void> maSelectHdl;
|
2015-05-06 10:17:36 +02:00
|
|
|
Link<CommandEvent const *, void> maCommandHandler;
|
2015-05-06 10:31:54 +02:00
|
|
|
Link<StateChangedType const *, void> maStateChangedHandler;
|
2015-05-06 10:56:13 +02:00
|
|
|
Link<DataChangedEvent const *, void> maDataChangedHandler;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2015-04-30 18:46:53 +09:00
|
|
|
public:
|
2007-04-11 17:15:08 +00:00
|
|
|
using Window::ImplInit;
|
2015-04-30 18:46:53 +09:00
|
|
|
private:
|
2015-05-19 16:35:45 +02:00
|
|
|
SAL_DLLPRIVATE void InvalidateItem(sal_uInt16 nPosition);
|
2015-05-06 12:14:52 +09:00
|
|
|
SAL_DLLPRIVATE void InvalidateSpin(bool bUpperIn, bool bLowerIn);
|
2015-05-19 16:35:45 +02:00
|
|
|
SAL_DLLPRIVATE void InvalidateMenuButton();
|
2015-04-30 18:46:53 +09:00
|
|
|
|
2014-09-23 11:20:40 +02:00
|
|
|
SAL_DLLPRIVATE void ImplInit( vcl::Window* pParent, WinBits nStyle );
|
2007-04-11 17:15:08 +00:00
|
|
|
using DockingWindow::ImplInitSettings;
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE void ImplInitSettings( bool bFont, bool bForeground, bool bBackground );
|
2007-04-11 17:15:08 +00:00
|
|
|
SAL_DLLPRIVATE void ImplLoadRes( const ResId& rResId );
|
2010-09-29 15:46:40 +08:00
|
|
|
SAL_DLLPRIVATE ImplToolItem* ImplGetItem( sal_uInt16 nId ) const;
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE bool ImplCalcItem();
|
|
|
|
SAL_DLLPRIVATE sal_uInt16 ImplCalcBreaks( long nWidth, long* pMaxLineWidth, bool bCalcHorz );
|
|
|
|
SAL_DLLPRIVATE void ImplFormat( bool bResize = false );
|
2015-05-06 12:14:52 +09:00
|
|
|
SAL_DLLPRIVATE void ImplDrawSpin(vcl::RenderContext& rRenderContext, bool bUpperIn, bool bLowerIn);
|
|
|
|
SAL_DLLPRIVATE void ImplDrawSeparator(vcl::RenderContext& rRenderContext, sal_uInt16 nPos, const Rectangle& rRect);
|
2015-04-30 18:46:53 +09:00
|
|
|
SAL_DLLPRIVATE void ImplDrawItem(vcl::RenderContext& rRenderContext, sal_uInt16 nPos, sal_uInt16 nHighlight = 0, bool bPaint = false, bool bLayout = false );
|
2007-04-11 17:15:08 +00:00
|
|
|
using Window::ImplInvalidate;
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE void ImplInvalidate( bool bNewCalc = false, bool bFullPaint = false );
|
2010-09-29 15:46:40 +08:00
|
|
|
SAL_DLLPRIVATE void ImplUpdateItem( sal_uInt16 nIndex = 0xFFFF );
|
2013-07-29 17:08:57 +02:00
|
|
|
SAL_DLLPRIVATE const OUString ImplConvertMenuString( const OUString& rStr );
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE bool ImplHandleMouseMove( const MouseEvent& rMEvt, bool bRepeat = false );
|
|
|
|
SAL_DLLPRIVATE bool ImplHandleMouseButtonUp( const MouseEvent& rMEvt, bool bCancel = false );
|
|
|
|
SAL_DLLPRIVATE void ImplChangeHighlight( ImplToolItem* pItem, bool bNoGrabFocus = false );
|
|
|
|
SAL_DLLPRIVATE bool ImplChangeHighlightUpDn( bool bUp, bool bNoCycle = false );
|
2010-09-29 15:46:40 +08:00
|
|
|
SAL_DLLPRIVATE sal_uInt16 ImplGetItemLine( ImplToolItem* pCurrentItem );
|
|
|
|
SAL_DLLPRIVATE ImplToolItem* ImplGetFirstValidItem( sal_uInt16 nLine );
|
2014-08-23 22:22:32 +03:00
|
|
|
SAL_DLLPRIVATE bool ImplOpenItem( vcl::KeyCode aKeyCode );
|
|
|
|
SAL_DLLPRIVATE bool ImplActivateItem( vcl::KeyCode aKeyCode );
|
2007-04-11 17:15:08 +00:00
|
|
|
SAL_DLLPRIVATE void ImplShowFocus();
|
|
|
|
SAL_DLLPRIVATE void ImplHideFocus();
|
|
|
|
SAL_DLLPRIVATE void ImplUpdateInputEnable();
|
|
|
|
SAL_DLLPRIVATE void ImplFillLayoutData() const;
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE bool ImplHasClippedItems();
|
2007-04-11 17:15:08 +00:00
|
|
|
SAL_DLLPRIVATE Point ImplGetPopupPosition( const Rectangle& rRect, const Size& rSize ) const;
|
|
|
|
SAL_DLLPRIVATE void ImplExecuteCustomMenu();
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE bool ImplIsFloatingMode() const;
|
|
|
|
SAL_DLLPRIVATE bool ImplIsInPopupMode() const;
|
2013-07-29 16:42:25 +02:00
|
|
|
SAL_DLLPRIVATE const OUString& ImplGetHelpText( sal_uInt16 nItemId ) const;
|
2012-06-27 22:06:01 +04:00
|
|
|
SAL_DLLPRIVATE Size ImplGetOptimalFloatingSize();
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE bool ImplHasExternalMenubutton();
|
2015-05-06 12:14:52 +09:00
|
|
|
SAL_DLLPRIVATE void ImplDrawFloatwinBorder(vcl::RenderContext& rRenderContext, ImplToolItem* pItem );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
DECL_DLLPRIVATE_LINK( ImplCallExecuteCustomMenu, void* );
|
2015-05-05 09:59:27 +02:00
|
|
|
DECL_DLLPRIVATE_LINK_TYPED( ImplUpdateHdl, Idle*, void );
|
2007-04-11 17:15:08 +00:00
|
|
|
DECL_DLLPRIVATE_LINK( ImplResetAutoSizeTriesHdl, void* );
|
|
|
|
DECL_DLLPRIVATE_LINK( ImplCustomMenuListener, VclMenuEvent* );
|
2015-05-04 17:28:40 +02:00
|
|
|
DECL_DLLPRIVATE_LINK_TYPED( ImplDropdownLongClickHdl, Timer*, void );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2015-02-07 12:34:15 +01:00
|
|
|
ToolBox (const ToolBox &) SAL_DELETED_FUNCTION;
|
|
|
|
ToolBox& operator= (const ToolBox &) SAL_DELETED_FUNCTION;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
public:
|
2014-02-21 12:53:51 +01:00
|
|
|
SAL_DLLPRIVATE void ImplFloatControl( bool bStart, FloatingWindow* pWindow = NULL );
|
2007-04-11 17:15:08 +00:00
|
|
|
SAL_DLLPRIVATE void ImplDisableFlatButtons();
|
|
|
|
|
|
|
|
static SAL_DLLPRIVATE int ImplGetDragWidth( ToolBox* pThis );
|
|
|
|
static SAL_DLLPRIVATE void ImplUpdateDragArea( ToolBox *pThis );
|
|
|
|
static SAL_DLLPRIVATE void ImplCalcBorder( WindowAlign eAlign, long& rLeft, long& rTop,
|
|
|
|
long& rRight, long& rBottom, const ToolBox *pThis );
|
2015-04-30 18:46:53 +09:00
|
|
|
|
|
|
|
SAL_DLLPRIVATE void ImplDrawGrip(vcl::RenderContext& rRenderContext);
|
|
|
|
SAL_DLLPRIVATE void ImplDrawGradientBackground(vcl::RenderContext& rRenderContext, ImplDockingWindowWrapper *pWrapper);
|
|
|
|
SAL_DLLPRIVATE bool ImplDrawNativeBackground(vcl::RenderContext& rRenderContext, const vcl::Region &rRegion);
|
|
|
|
SAL_DLLPRIVATE void ImplDrawTransparentBackground(vcl::RenderContext& rRenderContext, const vcl::Region &rRegion);
|
|
|
|
SAL_DLLPRIVATE void ImplDrawConstantBackground(vcl::RenderContext& rRenderContext, const vcl::Region &rRegion, bool bIsInPopupMode);
|
|
|
|
SAL_DLLPRIVATE void ImplDrawBackground(vcl::RenderContext& rRenderContext, const Rectangle &rRect);
|
|
|
|
|
|
|
|
SAL_DLLPRIVATE void ImplErase(vcl::RenderContext& rRenderContext, const Rectangle &rRect, bool bHighlight = false, bool bHasOpenPopup = false );
|
|
|
|
|
|
|
|
SAL_DLLPRIVATE void ImplDrawBorder(vcl::RenderContext& rRenderContext);
|
2007-04-11 17:15:08 +00:00
|
|
|
static SAL_DLLPRIVATE const ImplToolItem *ImplGetFirstClippedItem( const ToolBox* pThis );
|
2010-09-29 15:46:40 +08:00
|
|
|
static SAL_DLLPRIVATE Size ImplCalcSize( const ToolBox* pThis, sal_uInt16 nCalcLines, sal_uInt16 nCalcMode = 0 );
|
2007-04-11 17:15:08 +00:00
|
|
|
static SAL_DLLPRIVATE void ImplCalcFloatSizes( ToolBox* pThis );
|
2010-09-29 15:46:40 +08:00
|
|
|
static SAL_DLLPRIVATE Size ImplCalcFloatSize( ToolBox* pThis, sal_uInt16& rLines );
|
2007-04-11 17:15:08 +00:00
|
|
|
static SAL_DLLPRIVATE void ImplCalcMinMaxFloatSize( ToolBox* pThis, Size& rMinSize, Size& rMaxSize );
|
|
|
|
static SAL_DLLPRIVATE void ImplSetMinMaxFloatSize( ToolBox *pThis );
|
2010-09-29 15:46:40 +08:00
|
|
|
static SAL_DLLPRIVATE sal_uInt16 ImplCalcLines( ToolBox* pThis, long nToolSize );
|
|
|
|
static SAL_DLLPRIVATE sal_uInt16 ImplTestLineSize( ToolBox* pThis, const Point& rPos );
|
|
|
|
static SAL_DLLPRIVATE void ImplLineSizing( ToolBox* pThis, const Point& rPos, Rectangle& rRect, sal_uInt16 nLineMode );
|
|
|
|
static SAL_DLLPRIVATE sal_uInt16 ImplFindItemPos( ToolBox* pBox, const Point& rPos );
|
|
|
|
static SAL_DLLPRIVATE sal_uInt16 ImplFindItemPos( const ImplToolItem* pItem, const std::vector< ImplToolItem >& rList );
|
2015-05-06 12:14:52 +09:00
|
|
|
SAL_DLLPRIVATE void ImplDrawMenuButton(vcl::RenderContext& rRenderContext, bool bHighlight);
|
2015-04-30 18:46:53 +09:00
|
|
|
SAL_DLLPRIVATE void ImplDrawButton(vcl::RenderContext& rRenderContext, const Rectangle &rRect, sal_uInt16 highlight, bool bChecked, bool bEnabled, bool bIsWindow);
|
2010-09-29 15:46:40 +08:00
|
|
|
static SAL_DLLPRIVATE sal_uInt16 ImplCountLineBreaks( const ToolBox *pThis );
|
2007-04-11 17:15:08 +00:00
|
|
|
SAL_DLLPRIVATE ImplToolBoxPrivateData* ImplGetToolBoxPrivateData() const { return mpData; }
|
|
|
|
|
|
|
|
protected:
|
2015-05-17 22:56:46 +09:00
|
|
|
virtual void ApplySettings(vcl::RenderContext& rRenderContext) SAL_OVERRIDE;
|
|
|
|
void SetCurItemId(sal_uInt16 nSet)
|
|
|
|
{
|
|
|
|
mnCurItemId = nSet;
|
|
|
|
}
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
public:
|
2014-09-23 11:20:40 +02:00
|
|
|
ToolBox( vcl::Window* pParent, WinBits nStyle = 0 );
|
|
|
|
ToolBox( vcl::Window* pParent, const ResId& rResId );
|
2015-01-12 11:38:12 +02:00
|
|
|
virtual ~ToolBox();
|
|
|
|
virtual void dispose() SAL_OVERRIDE;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
virtual void Click();
|
2015-01-21 12:15:26 +02:00
|
|
|
void DoubleClick();
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void Activate() SAL_OVERRIDE;
|
|
|
|
virtual void Deactivate() SAL_OVERRIDE;
|
2015-01-21 12:15:26 +02:00
|
|
|
void Highlight();
|
2007-04-11 17:15:08 +00:00
|
|
|
virtual void Select();
|
|
|
|
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void MouseButtonDown( const MouseEvent& rMEvt ) SAL_OVERRIDE;
|
|
|
|
virtual void MouseButtonUp( const MouseEvent& rMEvt ) SAL_OVERRIDE;
|
|
|
|
virtual void MouseMove( const MouseEvent& rMEvt ) SAL_OVERRIDE;
|
|
|
|
virtual void Tracking( const TrackingEvent& rTEvt ) SAL_OVERRIDE;
|
2015-04-28 11:00:54 +09:00
|
|
|
virtual void Paint( vcl::RenderContext& rRenderContext, const Rectangle& rRect ) SAL_OVERRIDE;
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void Move() SAL_OVERRIDE;
|
|
|
|
virtual void Resize() SAL_OVERRIDE;
|
|
|
|
virtual void RequestHelp( const HelpEvent& rHEvt ) SAL_OVERRIDE;
|
|
|
|
virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE;
|
|
|
|
virtual void Command( const CommandEvent& rCEvt ) SAL_OVERRIDE;
|
|
|
|
virtual void StateChanged( StateChangedType nType ) SAL_OVERRIDE;
|
|
|
|
virtual void DataChanged( const DataChangedEvent& rDCEvt ) SAL_OVERRIDE;
|
|
|
|
|
|
|
|
virtual void GetFocus() SAL_OVERRIDE;
|
|
|
|
virtual void LoseFocus() SAL_OVERRIDE;
|
|
|
|
virtual void KeyInput( const KeyEvent& rKEvt ) SAL_OVERRIDE;
|
|
|
|
|
|
|
|
virtual bool PrepareToggleFloatingMode() SAL_OVERRIDE;
|
|
|
|
virtual void ToggleFloatingMode() SAL_OVERRIDE;
|
|
|
|
virtual void StartDocking() SAL_OVERRIDE;
|
|
|
|
virtual bool Docking( const Point& rPos, Rectangle& rRect ) SAL_OVERRIDE;
|
|
|
|
virtual void EndDocking( const Rectangle& rRect, bool bFloatMode ) SAL_OVERRIDE;
|
|
|
|
virtual void Resizing( Size& rSize ) SAL_OVERRIDE;
|
|
|
|
virtual Size GetOptimalSize() const SAL_OVERRIDE;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
void InsertItem( const ResId& rResId,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nPos = TOOLBOX_APPEND );
|
2013-05-30 18:25:09 +02:00
|
|
|
/// Insert a command (like '.uno:Save').
|
2013-06-01 23:09:26 +02:00
|
|
|
virtual void InsertItem( const OUString& rCommand,
|
2014-02-04 19:55:39 +00:00
|
|
|
const css::uno::Reference<css::frame::XFrame>& rFrame,
|
2014-10-18 20:16:11 +02:00
|
|
|
ToolBoxItemBits nBits = ToolBoxItemBits::NONE,
|
2013-06-14 16:33:23 +02:00
|
|
|
const Size& rRequestedSize = Size(),
|
2013-05-30 18:25:09 +02:00
|
|
|
sal_uInt16 nPos = TOOLBOX_APPEND );
|
2010-09-29 15:46:40 +08:00
|
|
|
void InsertItem( sal_uInt16 nItemId, const Image& rImage,
|
2014-10-18 20:16:11 +02:00
|
|
|
ToolBoxItemBits nBits = ToolBoxItemBits::NONE,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nPos = TOOLBOX_APPEND );
|
|
|
|
void InsertItem( sal_uInt16 nItemId, const Image& rImage,
|
2013-07-29 17:08:57 +02:00
|
|
|
const OUString& rText,
|
2014-10-18 20:16:11 +02:00
|
|
|
ToolBoxItemBits nBits = ToolBoxItemBits::NONE,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nPos = TOOLBOX_APPEND );
|
2013-07-29 17:08:57 +02:00
|
|
|
void InsertItem( sal_uInt16 nItemId, const OUString& rText,
|
2014-10-18 20:16:11 +02:00
|
|
|
ToolBoxItemBits nBits = ToolBoxItemBits::NONE,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nPos = TOOLBOX_APPEND );
|
2014-09-23 11:20:40 +02:00
|
|
|
void InsertWindow( sal_uInt16 nItemId, vcl::Window* pWindow,
|
2014-10-18 20:16:11 +02:00
|
|
|
ToolBoxItemBits nBits = ToolBoxItemBits::NONE,
|
2010-09-29 15:46:40 +08:00
|
|
|
sal_uInt16 nPos = TOOLBOX_APPEND );
|
|
|
|
void InsertSpace( sal_uInt16 nPos = TOOLBOX_APPEND );
|
|
|
|
void InsertSeparator( sal_uInt16 nPos = TOOLBOX_APPEND,
|
|
|
|
sal_uInt16 nPixSize = 0 );
|
|
|
|
void InsertBreak( sal_uInt16 nPos = TOOLBOX_APPEND );
|
|
|
|
void RemoveItem( sal_uInt16 nPos );
|
|
|
|
void CopyItem( const ToolBox& rToolBox, sal_uInt16 nItemId,
|
|
|
|
sal_uInt16 nNewPos = TOOLBOX_APPEND );
|
2007-04-11 17:15:08 +00:00
|
|
|
void Clear();
|
|
|
|
|
|
|
|
const ImageList& GetImageList() const { return maImageList; }
|
|
|
|
void SetImageList( const ImageList& rImageList );
|
|
|
|
|
2014-12-20 16:21:21 +02:00
|
|
|
void SetButtonType( ButtonType eNewType = ButtonType::SYMBOLONLY );
|
2007-04-11 17:15:08 +00:00
|
|
|
ButtonType GetButtonType() const { return meButtonType; }
|
|
|
|
|
|
|
|
// sets a fixed button size (small, large or dontcare (==autosize))
|
|
|
|
void SetToolboxButtonSize( ToolBoxButtonSize eSize );
|
|
|
|
ToolBoxButtonSize GetToolboxButtonSize() const;
|
|
|
|
|
|
|
|
void SetAlign( WindowAlign eNewAlign = WINDOWALIGN_TOP );
|
|
|
|
WindowAlign GetAlign() const { return meAlign; }
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsHorizontal() const { return mbHorz; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetLineCount( sal_uInt16 nNewLines );
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetLineCount() const { return mnLines; }
|
|
|
|
sal_uInt16 GetCurLine() const { return mnCurLine; }
|
2014-02-21 12:53:51 +01:00
|
|
|
void ShowLine( bool bNext );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// Used to enable/disable scrolling one page at a time for toolbar
|
2014-02-21 12:53:51 +01:00
|
|
|
void SetPageScroll( bool b );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetItemCount() const;
|
2010-09-29 15:46:40 +08:00
|
|
|
ToolBoxItemType GetItemType( sal_uInt16 nPos ) const;
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetItemPos( sal_uInt16 nItemId ) const;
|
|
|
|
sal_uInt16 GetItemPos( const Point& rPos ) const;
|
|
|
|
sal_uInt16 GetItemId( sal_uInt16 nPos ) const;
|
|
|
|
sal_uInt16 GetItemId( const Point& rPos ) const;
|
2013-05-30 18:25:09 +02:00
|
|
|
/// Map the command name (like .uno:Save) back to item id.
|
|
|
|
sal_uInt16 GetItemId( const OUString& rCommand ) const;
|
2010-09-29 15:46:40 +08:00
|
|
|
Rectangle GetItemRect( sal_uInt16 nItemId ) const;
|
|
|
|
Rectangle GetItemPosRect( sal_uInt16 nPos ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2015-05-06 10:25:34 +01:00
|
|
|
/// Returns size of the bitmap / text that is inside this toolbox item.
|
|
|
|
Size GetItemContentSize( sal_uInt16 nItemId ) const;
|
|
|
|
|
2013-05-30 18:25:09 +02:00
|
|
|
/// Retrieves the optimal position to place a popup window for this item (subtoolbar or dropdown)
|
2010-09-29 15:46:40 +08:00
|
|
|
Point GetItemPopupPosition( sal_uInt16 nItemId, const Size& rSize ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
Rectangle GetScrollRect() const;
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetCurItemId() const { return mnCurItemId; }
|
|
|
|
sal_uInt16 GetDownItemId() const { return mnDownItemId; }
|
|
|
|
sal_uInt16 GetClicks() const { return mnMouseClicks; }
|
|
|
|
sal_uInt16 GetModifier() const { return mnMouseModifier; }
|
|
|
|
sal_uInt16 GetKeyModifier() const { return mnKeyModifier; }
|
2010-09-29 15:46:40 +08:00
|
|
|
|
|
|
|
void SetItemBits( sal_uInt16 nItemId, ToolBoxItemBits nBits );
|
|
|
|
ToolBoxItemBits GetItemBits( sal_uInt16 nItemId ) const;
|
|
|
|
|
2014-02-06 16:45:50 +00:00
|
|
|
void SetItemExpand( sal_uInt16 nItemId, bool bExpand );
|
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetItemData( sal_uInt16 nItemId, void* pNewData );
|
|
|
|
void* GetItemData( sal_uInt16 nItemId ) const;
|
|
|
|
void SetItemImage( sal_uInt16 nItemId, const Image& rImage );
|
|
|
|
Image GetItemImage( sal_uInt16 nItemId ) const;
|
2015-03-02 20:57:32 +09:00
|
|
|
Image GetItemImageOriginal( sal_uInt16 nItemId ) const;
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetItemImageAngle( sal_uInt16 nItemId, long nAngle10 );
|
2014-02-21 12:53:51 +01:00
|
|
|
void SetItemImageMirrorMode( sal_uInt16 nItemId, bool bMirror );
|
2013-07-29 16:42:25 +02:00
|
|
|
void SetItemText( sal_uInt16 nItemId, const OUString& rText );
|
|
|
|
const OUString& GetItemText( sal_uInt16 nItemId ) const;
|
2014-09-23 11:20:40 +02:00
|
|
|
void SetItemWindow( sal_uInt16 nItemId, vcl::Window* pNewWindow );
|
2015-01-21 12:15:26 +02:00
|
|
|
vcl::Window* GetItemWindow( sal_uInt16 nItemId ) const;
|
|
|
|
sal_uInt16 GetHighlightItemId() const { return mnHighItemId; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
void StartSelection();
|
|
|
|
void EndSelection();
|
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
void SetItemDown( sal_uInt16 nItemId, bool bDown, bool bRelease = true );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetItemState( sal_uInt16 nItemId, TriState eState );
|
|
|
|
TriState GetItemState( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
void CheckItem( sal_uInt16 nItemId, bool bCheck = true );
|
|
|
|
bool IsItemChecked( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-02-07 17:54:14 +01:00
|
|
|
void EnableItem( sal_uInt16 nItemId, bool bEnable = true );
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsItemEnabled( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
void TriggerItem( sal_uInt16 nItemId, bool bShift = false, bool bCtrl = false );
|
2014-02-07 12:10:47 +01:00
|
|
|
|
|
|
|
/// Shows or hides items.
|
2014-02-07 17:54:14 +01:00
|
|
|
void ShowItem(sal_uInt16 nItemId, bool bVisible = true);
|
2014-02-07 12:10:47 +01:00
|
|
|
/// Overload to provide ShowItem via command id.
|
|
|
|
void ShowItem(const OUString& rCommand, bool bVisible = true) { ShowItem(GetItemId(rCommand), bVisible); }
|
|
|
|
|
|
|
|
/// Convenience method to hide items (via ShowItem).
|
2014-02-07 17:54:14 +01:00
|
|
|
void HideItem(sal_uInt16 nItemId) { ShowItem( nItemId, false ); }
|
2014-02-07 12:10:47 +01:00
|
|
|
/// Overload to provide HideItem via command id.
|
|
|
|
void HideItem(const OUString& rCommand) { ShowItem(rCommand, false); }
|
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsItemVisible( sal_uInt16 nItemId ) const;
|
|
|
|
bool IsItemReallyVisible( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2013-07-23 20:45:48 +01:00
|
|
|
void SetItemCommand( sal_uInt16 nItemId, const OUString& rCommand );
|
|
|
|
const OUString GetItemCommand( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
using Window::SetQuickHelpText;
|
2013-07-29 16:42:25 +02:00
|
|
|
void SetQuickHelpText( sal_uInt16 nItemId, const OUString& rText );
|
2007-04-11 17:15:08 +00:00
|
|
|
using Window::GetQuickHelpText;
|
2013-07-29 16:42:25 +02:00
|
|
|
const OUString& GetQuickHelpText( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2013-07-29 16:42:25 +02:00
|
|
|
void SetHelpText( sal_uInt16 nItemId, const OUString& rText );
|
|
|
|
const OUString& GetHelpText( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2013-04-07 12:06:47 +02:00
|
|
|
void SetHelpId( sal_uInt16 nItemId, const OString& rHelpId );
|
2013-07-29 16:42:25 +02:00
|
|
|
OString GetHelpId( sal_uInt16 nItemId ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// window size according to current alignment, floating state and number of lines
|
|
|
|
Size CalcWindowSizePixel() const;
|
|
|
|
// window size according to current alignment, floating state and a given number of lines
|
2010-09-29 15:46:40 +08:00
|
|
|
Size CalcWindowSizePixel( sal_uInt16 nCalcLines ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
// window size according to current floating state and a given number of lines and a given alignment
|
2010-09-29 15:46:40 +08:00
|
|
|
Size CalcWindowSizePixel( sal_uInt16 nCalcLines, WindowAlign eAlign ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
// floating window size according to number of lines (uses the number of line breaks)
|
|
|
|
Size CalcFloatingWindowSizePixel() const;
|
|
|
|
// floating window size with a given number of lines
|
2010-09-29 15:46:40 +08:00
|
|
|
Size CalcFloatingWindowSizePixel( sal_uInt16 nCalcLines ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
// automatic window size for popoup mode
|
|
|
|
Size CalcPopupWindowSizePixel() const;
|
|
|
|
|
|
|
|
// computes the smallest useful size when docked, ie with the first item visible only (+drag area and menu button)
|
|
|
|
Size CalcMinimumWindowSizePixel() const;
|
|
|
|
|
|
|
|
void SetDockingRects( const Rectangle& rOutRect,
|
|
|
|
const Rectangle& rInRect );
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetFloatingLines( sal_uInt16 nFloatLines );
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetFloatingLines() const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-07-10 13:21:42 +01:00
|
|
|
void SetStyle( WinBits nNewStyle );
|
2007-04-11 17:15:08 +00:00
|
|
|
WinBits GetStyle() const { return mnWinStyle; }
|
|
|
|
|
|
|
|
// enable/disable undocking
|
2014-02-21 12:53:51 +01:00
|
|
|
void Lock( bool bLock = true );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// read configuration to determine locking behaviour
|
2014-02-21 12:53:51 +01:00
|
|
|
static bool AlwaysLocked();
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-01-10 12:45:57 +01:00
|
|
|
void EnableMenuStrings( bool bEnable = true ) { mbMenuStrings = bEnable; }
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsMenuStringsEnabled() const { return mbMenuStrings; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetOutStyle( sal_uInt16 nNewStyle );
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetOutStyle() const { return mnOutStyle; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-01-11 17:51:30 +02:00
|
|
|
void EnableCustomize( bool bEnable = true );
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsCustomize() { return mbCustomize; }
|
|
|
|
bool IsInCustomizeMode() const { return mbCustomizeMode; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2015-03-04 20:21:19 +09:00
|
|
|
using DockingWindow::SetHelpText;
|
|
|
|
using DockingWindow::GetHelpText;
|
|
|
|
using DockingWindow::SetHelpId;
|
|
|
|
using DockingWindow::GetHelpId;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2015-05-05 22:43:11 +02:00
|
|
|
void SetClickHdl( const Link<ToolBox *, void>& rLink ) { maClickHdl = rLink; }
|
|
|
|
void SetDoubleClickHdl( const Link<ToolBox *, void>& rLink ) { maDoubleClickHdl = rLink; }
|
|
|
|
void SetDropdownClickHdl( const Link<ToolBox *, void>& rLink );
|
2015-05-05 23:15:53 +02:00
|
|
|
void SetActivateHdl( const Link<ToolBox *, void>& rLink ) { maActivateHdl = rLink; }
|
2015-05-05 23:35:34 +02:00
|
|
|
void SetDeactivateHdl( const Link<ToolBox *, void>& rLink ) { maDeactivateHdl = rLink; }
|
2015-05-05 22:43:11 +02:00
|
|
|
void SetSelectHdl( const Link<ToolBox *, void>& rLink ) { maSelectHdl = rLink; }
|
|
|
|
const Link<ToolBox *, void>& GetSelectHdl() const { return maSelectHdl; }
|
2015-05-06 10:17:36 +02:00
|
|
|
void SetCommandHdl( const Link<CommandEvent const *, void>& aLink ) { maCommandHandler = aLink; }
|
2015-05-06 10:31:54 +02:00
|
|
|
void SetStateChangedHdl( const Link<StateChangedType const *, void>& aLink ) { maStateChangedHandler = aLink; }
|
2015-05-06 10:56:13 +02:00
|
|
|
void SetDataChangedHdl( const Link<DataChangedEvent const *, void>& aLink ) { maDataChangedHandler = aLink; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// support for custom menu (eg for configuration)
|
|
|
|
// note: this menu will also be used to display currently
|
|
|
|
// clipped toolbox items, so you should only touch
|
|
|
|
// items that you added by yourself
|
|
|
|
// the private toolbox items will only use item ids starting from TOOLBOX_MENUITEM_START
|
|
|
|
// to allow for customization of the menu the coresponding handler is called
|
|
|
|
// when the menu button was clicked and before the menu is executed
|
2010-09-29 15:46:40 +08:00
|
|
|
void SetMenuType( sal_uInt16 aType = TOOLBOX_MENUTYPE_CUSTOMIZE );
|
2015-01-21 12:15:26 +02:00
|
|
|
sal_uInt16 GetMenuType() const;
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsMenuEnabled() const;
|
2007-04-11 17:15:08 +00:00
|
|
|
PopupMenu* GetMenu() const;
|
2011-06-10 18:20:19 +02:00
|
|
|
void UpdateCustomMenu();
|
2015-05-06 11:07:59 +02:00
|
|
|
void SetMenuButtonHdl( const Link<ToolBox *, void>& rLink );
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// open custommenu
|
|
|
|
void ExecuteCustomMenu();
|
|
|
|
|
|
|
|
// allow Click Handler to detect special key
|
2011-01-10 20:51:02 +00:00
|
|
|
bool IsShift() const { return mbIsShift; }
|
2007-04-11 17:15:08 +00:00
|
|
|
// allow Click Handler to distinguish between mouse and key input
|
2014-02-21 12:53:51 +01:00
|
|
|
bool IsKeyEvent() const { return mbIsKeyEvent; }
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// allows framework to set/query the planned popupmode
|
2014-02-21 12:53:51 +01:00
|
|
|
bool WillUsePopupMode() const;
|
|
|
|
void WillUsePopupMode( bool b);
|
2007-04-11 17:15:08 +00:00
|
|
|
|
|
|
|
// accessibility helpers
|
|
|
|
|
|
|
|
// gets the displayed text
|
2014-03-26 16:37:00 +01:00
|
|
|
OUString GetDisplayText() const SAL_OVERRIDE;
|
2007-04-11 17:15:08 +00:00
|
|
|
// returns the bounding box for the character at index nIndex
|
|
|
|
// where nIndex is relative to the starting index of the item
|
|
|
|
// with id nItemId (in coordinates of the displaying window)
|
2010-09-29 15:46:40 +08:00
|
|
|
Rectangle GetCharacterBounds( sal_uInt16 nItemId, long nIndex ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
// -1 is returned if no character is at that point
|
|
|
|
// if an index is found the corresponding item id is filled in (else 0)
|
2010-09-29 15:46:40 +08:00
|
|
|
long GetIndexForPoint( const Point& rPoint, sal_uInt16& rItemID ) const;
|
2007-04-11 17:15:08 +00:00
|
|
|
|
2014-02-09 00:53:28 +01:00
|
|
|
static Size GetDefaultImageSize(bool bLarge);
|
|
|
|
Size GetDefaultImageSize() const;
|
2010-09-29 15:46:40 +08:00
|
|
|
void ChangeHighlight( sal_uInt16 nPos );
|
CWS-TOOLING: integrate CWS dba32a
2009-04-16 13:08:19 +0200 oj r270882 : #i14538# set property at control
2009-04-16 13:04:28 +0200 oj r270881 : #i98557# remove binary string for SRB
2009-04-15 13:19:10 +0200 oj r270838 : #i96782# use type set at view
2009-04-14 14:53:20 +0200 oj r270778 : #i96782# set initialize size for custom shape
2009-04-06 14:19:14 +0200 oj r270546 : #i88432# correct pos when < 0 while resizing
2009-04-06 13:36:13 +0200 oj r270541 : #i96782# handle toolbar and menubar differently
2009-04-06 13:33:54 +0200 oj r270540 : #i96782# handle toolbar and menubar differently
2009-04-06 12:28:23 +0200 oj r270534 : #i96782# handle toolbar and menubar differently
2009-04-06 12:27:44 +0200 oj r270533 : #i96782# handle toolbar and menubar differently
2009-04-06 12:24:32 +0200 oj r270532 : #i96782# handle toolbar and menubar differently
2009-04-06 12:15:15 +0200 oj r270531 : do not initialze when field is empty
2009-04-06 10:06:08 +0200 oj r270528 : #i96782# clean up of menubar and remove duplicates
2009-04-06 09:47:49 +0200 oj r270527 : #i96519# adjust help text dynamic
2009-04-03 13:43:20 +0200 oj r270482 : do not need to remove section from observer they are already disposed
2009-04-03 13:27:28 +0200 fs r270479 : #i97356#
2009-04-02 11:30:39 +0200 fs r270386 : UNX line ends
2009-04-02 10:54:51 +0200 fs r270379 : UNX line ends
2009-04-02 10:39:57 +0200 fs r270378 : UNX line ends
2009-04-02 10:37:24 +0200 fs r270377 : why did this survive the rebase? was removed on trunk ...
2009-03-31 13:31:12 +0200 fs r270277 : component_foo should be public
2009-03-28 00:21:01 +0100 fs r270176 : manuallly merged the changes which happened in CWS before resync to m45, where the directory had been moved from reportdesign/registry to reportbuilder/registry
2009-03-27 23:01:20 +0100 fs r270174 : CWS-TOOLING: rebase CWS dba32a to trunk@270033 (milestone: DEV300:m45)
2009-03-11 12:23:35 +0100 fs r269310 : #i99958# ensure the ControlModelLock doesn't release twice
2009-03-06 09:07:32 +0100 fs r268970 : ignore output paths in SVN's status
2009-03-06 09:07:08 +0100 fs r268969 : ignore output paths in SVN's status
2009-03-04 11:28:02 +0100 oj r268800 : copy and paste error, check correct end now
2009-03-03 15:49:11 +0100 fs r268736 : #i10000# those merges were lost during the rebase (m38->m42)
2009-03-03 13:25:27 +0100 lla r268720 : #i99652# fix wrong refactoring
2009-02-27 11:12:56 +0100 fs r268566 : beautified
2009-02-27 10:53:47 +0100 fs r268561 : doFormListening(false) only when actually isFormListening() (found during complex test case XMLFormSettings with assertions)
2009-02-26 20:55:31 +0100 fs r268546 : #i96530# set the Label property of the bound control, if we didn't create a dedicated label control
2009-02-26 11:53:09 +0100 fs r268494 : #i10000#
2009-02-26 11:27:50 +0100 fs r268493 : #i10000#
2009-02-26 11:17:08 +0100 fs r268490 : reportdesign depends on REPORTBUILDER, not REPORTDESIGN
2009-02-25 11:39:48 +0100 fs r268422 : #i10000# post-resync: INFO_ESCAPE_DATETIME got lost during rebase
2009-02-24 23:24:10 +0100 fs r268411 : CWS-TOOLING: rebase CWS dba32a to trunk@268395 (milestone: DEV300:m42)
2009-02-20 15:09:48 +0100 fs r268324 : respect ImplicitCatalog/SchemaRestriction in all necessary places
2009-02-20 13:48:10 +0100 oj r268318 : order of initialize corrected
2009-02-14 15:07:52 +0100 fs r267759 : #i98975# when an image does not have a bitmap, but a text, draw this (as placeholder)
2009-02-14 15:02:40 +0100 fs r267758 : consolidated and removed some duplicate code
2009-02-14 13:52:23 +0100 fs r267756 : #i10000#
2009-02-13 22:08:34 +0100 fs r267750 : #i100000#
2009-02-13 22:07:25 +0100 fs r267749 : #i10000#
2009-02-13 21:55:36 +0100 fs r267747 : #i10000#
2009-02-13 21:54:27 +0100 fs r267746 : use const_cast
2009-02-13 21:29:10 +0100 fs r267745 : #i10000#
2009-02-13 21:27:39 +0100 fs r267744 : #i10000#
2009-02-13 20:59:13 +0100 fs r267742 : #i10000#
2009-02-13 13:21:30 +0100 fs r267717 : better diagnostics
2009-02-13 13:17:24 +0100 fs r267715 : #i58313# support Catalog/SchemaRestriction settings, which are applied in getTables when 'all catalogs/schemas' are to be retrieved
2009-02-13 13:16:14 +0100 fs r267714 : filter out some more known global settings
2009-02-13 12:39:43 +0100 fs r267713 : #i58313# ImplicitCatalog/SchemaRestriction
2009-02-13 12:36:50 +0100 fs r267712 : when exporting data source settings, allow for properties which have a VOID default value, but are currently not VOID
2009-02-13 12:35:57 +0100 fs r267711 : implement XSet, to allow inserting properties which have a default value of VOID
2009-02-13 12:35:03 +0100 fs r267710 : +addVoidProperty
2009-02-13 10:20:08 +0100 fs r267697 : removed unused variable
2009-02-13 09:46:46 +0100 fs r267695 : refactored the table filtering code, to have a better base for introducing additional low level filters
2009-02-10 09:23:07 +0100 lla r267537 : #i10000# wrong line feed, double named variable
2009-02-09 12:13:08 +0100 oj r267508 : #i98605# notify hanlder
2009-02-09 11:50:34 +0100 oj r267507 : #i98926# solve refcount problem
2009-02-09 11:50:05 +0100 oj r267506 : #i98971# fix for simple html
2009-02-09 11:49:24 +0100 oj r267505 : #i98971# fix for simple html
2009-02-09 11:47:27 +0100 oj r267504 : invoke on copy
2009-02-09 09:51:00 +0100 fs r267500 : #i98316#
2009-02-09 09:46:10 +0100 fs r267499 : setCurrentSelection: don't reset the current form when we de-select everything
2009-02-09 09:43:45 +0100 fs r267498 : #i98316#
2009-02-08 21:25:18 +0100 fs r267496 : #i98272# introduce late ctor for cloning
2009-02-07 21:08:39 +0100 fs r267485 : #i98272# when copy-constructing a FmFormPageImpl, use the XCloneable of the forms collection, instead of XPersistObject (which is incompletely implemented)
2009-02-07 21:07:26 +0100 fs r267484 : removed obsolete include guards
2009-02-07 21:05:22 +0100 fs r267483 : #i98272# implement XCloneable
2009-02-06 15:02:48 +0100 lla r267467 : #i96523# add XImageControl
2009-02-06 14:41:38 +0100 oj r267463 : #i98926# late init when connection disposed but only when asked for
2009-02-06 13:49:57 +0100 lla r267457 : #i92860# bigint in forms doesn't allow input of values > 1, fixed
2009-02-06 13:03:55 +0100 oj r267455 : ImageScaleMode
2009-02-05 14:48:19 +0100 lla r267424 : #i89335# dropdown listboxes are 14 instead of 7 lines high
2009-02-05 13:40:00 +0100 oj r267423 : #i96945# insert new prop Opaque
2009-02-05 13:39:19 +0100 oj r267422 : #i96945# insert layer handling for hell and heaven
2009-02-05 13:29:32 +0100 lla r267420 : #i89335# add is null, is not null, is not like filter condition
2009-02-04 12:23:02 +0100 oj r267364 : #i98821# load table font settings
2009-02-04 10:05:27 +0100 oj r267351 : #i98821# load table font settings
2009-02-04 09:23:22 +0100 fs r267350 : checking persistency of UI settings in database documents - for the moment, capture table formattings (which is issue 98821)
2009-02-04 09:22:15 +0100 fs r267349 : moved some methods which are of wider interest from DatabaseDocument to FileHelper resp. TestCase
2009-02-04 08:56:27 +0100 oj r267347 : #i97586# UcbStreamHelper::CreateStream doesn't check all streamModes use different method
2009-02-04 08:23:26 +0100 oj r267346 : #i98701# check key size is >= 3 and some redesign
2009-02-03 23:29:24 +0100 fs r267345 : return the component (controller), not the frame
2009-02-03 23:28:53 +0100 fs r267344 : openExisting returns a controller now, not the frame (this was a bug)
2009-02-03 23:28:25 +0100 fs r267343 : openElement: properly return the component in the table/query case
2009-02-02 12:48:17 +0100 oj r267261 : #i96013# fix for relative path
2009-02-02 10:33:28 +0100 lla r267253 : #i98557# cleanups and consolidation
2009-02-02 09:37:23 +0100 lla r267250 : #i88432# resize will no longer move components to other sections
2009-02-02 09:08:24 +0100 oj r267245 : #i97475# write 0x1A at the end of the file
2009-01-30 19:39:20 +0100 lla r267230 : #i10000# unused parameters
2009-01-30 09:51:09 +0100 fs r267181 : onsolete
2009-01-30 09:49:27 +0100 fs r267180 : onsolete
2009-01-29 14:28:22 +0100 oj r267139 : #i96825# import cell style
2009-01-29 14:23:12 +0100 oj r267137 : #i98601# export imagescalehandler
2009-01-29 14:19:57 +0100 lla r267135 : #i98601# add ImageScaleMode
2009-01-29 13:21:08 +0100 oj r267124 : #i98601# impl ScaleMode
2009-01-29 13:20:56 +0100 oj r267123 : #i98601# impl ScaleMode
2009-01-29 08:46:40 +0100 oj r267095 : new property: ScaleMode
2009-01-29 08:45:23 +0100 oj r267094 : new ScaleMode from UnControlImageModel
2009-01-29 08:28:12 +0100 oj r267093 : #i87930# close all sub forms/reports when the desktop is going to be terminated and no db frame exists
2009-01-28 19:54:34 +0100 lla r267082 : #i98557# pictures in report wizard
2009-01-28 15:06:25 +0100 oj r267060 : #i87930# close all sub forms/reports when the desktop is going to be terminated and no db frame exists
2009-01-28 11:38:41 +0100 lla r267046 : #i76783# handle binary fields in forms
2009-01-28 09:24:43 +0100 lla r267025 : #i10000#
2009-01-28 08:40:04 +0100 fs r267024 : #i10000#
2009-01-28 08:04:43 +0100 oj r267023 : #i93456# use resource strings for function names
2009-01-27 13:26:05 +0100 oj r266988 : check data field is type field or expression
2009-01-27 13:07:17 +0100 oj r266985 : check data field length
2009-01-27 11:48:19 +0100 oj r266974 : #i96823# return dll string as column name when no alias exists
2009-01-27 09:53:11 +0100 fs r266958 : display the message of a caught exception
2009-01-27 09:44:13 +0100 fs r266957 : #i58313# when retrieving all tables, just set an empty table type filter - the connection will care for translating this, by respecting the TableTypeFilterMode setting
2009-01-27 09:36:09 +0100 fs r266956 : #i58313# getTables: per JDBC spec, is not a valid table type filter. Translate it to 'null'.
2009-01-26 11:24:49 +0100 lla r266912 : #i97865# cleanups (AddField viewable in remote mode)
2009-01-26 07:49:27 +0100 lla r266897 : #i97865# AddField opens in remote case
2009-01-26 07:48:58 +0100 lla r266896 : #i97865# AddField opens in remote case
2009-01-26 07:48:42 +0100 lla r266895 : #i97865# AddField opens in remote case
2009-01-23 15:04:40 +0100 fs r266825 : consolidate the usage of OSQLMessageBox with MessageType==Warning into OSQLWarningBox
2009-01-23 10:47:33 +0100 fs r266787 : +supportsUserAdministration
2009-01-23 10:47:11 +0100 fs r266784 : use DatabaseMetaData.supportsUserAdministration
2009-01-23 07:55:59 +0100 lla r266767 : #i10000# fix gcc compiler failures
2009-01-21 15:08:55 +0100 lla r266673 : #i97265# Labels in HC (IsDark) with other color (viewable)
2009-01-19 14:58:54 +0100 lla r266504 : #i96523# last problems with FormatKey and '0' values fixed
2009-01-19 14:58:00 +0100 lla r266503 : #i96519# AddField help text
2009-01-19 11:59:02 +0100 fs r266485 : #i96523# for formatted field models, init them with TreatAsNumber = false
2009-01-16 10:31:49 +0100 lla r266405 : #i96793# add shrink to popup menu
2009-01-16 09:21:44 +0100 lla r266401 : #i96519# AddField contains a help text
2009-01-15 11:21:49 +0100 lla r266357 : #i96523# problem with XVclWindowPeer not fixed now
2009-01-15 09:19:20 +0100 lla r266335 : #i96523# more crashes fixed.
2009-01-14 13:08:34 +0100 lla r266291 : #i96523# problems with crashes fixed
2009-01-13 10:54:24 +0100 lla r266199 : #i96523# show datasource in formattedfields new files
2009-01-13 10:52:39 +0100 lla r266198 : #i96523# show datasource in formattedfields
2009-01-13 09:41:50 +0100 lla r266197 : #i96526# handling none existance default.otr
2009-01-12 12:55:49 +0100 fs r266151 : don't expect the control model to be a BoundComponent before adding as modify listener
2009-01-12 12:51:33 +0100 fs r266149 : #i88458# let the ImageControl be an XModifyBroadcaster, so the forms runtime can notice when the user changes the control content while it does not have the focus
2009-01-09 13:41:22 +0100 fs r266080 : doc
2009-01-09 13:14:14 +0100 fs r266077 : #i97377# SetModified when order is changed via DnD
2009-01-07 09:55:40 +0100 oj r265951 : merge from master
2009-01-07 09:55:24 +0100 oj r265950 : removed observer
2009-01-07 09:55:06 +0100 oj r265949 : merge from master
2009-01-07 07:29:11 +0100 oj r265945 : shadow var changed
2009-01-06 07:25:57 +0100 oj r265893 : CWS-TOOLING: rebase CWS dba32a to trunk@265758 (milestone: DEV300:m38)
2009-01-05 13:18:22 +0100 oj r265865 : convert to unix le
2009-01-05 09:13:52 +0100 lla r265857 : #i79423# lc_ sc_ permutation fix
2009-01-02 19:40:59 +0100 lla r265847 : #i79423# section shrink icons
2008-12-22 11:37:57 +0100 lla r265749 : #i97484# move component to negative Y-position
2008-12-22 11:37:05 +0100 lla r265748 : #i97484# move component to negative Y-position
2008-12-22 11:35:33 +0100 lla r265747 : #i97484# move component to negative Y-position
2008-12-22 11:25:07 +0100 lla r265745 : #i96757# changes via property browser was not undoable
2008-12-18 15:10:38 +0100 fs r265694 : corrected an condition in doFormListening, which otherwise leads to uncommitable grid columns in documents which are loaded from disc (not in documents which are newly created)
2008-12-18 14:54:39 +0100 fs r265692 : Hide Columns text slightly changed
2008-12-18 13:44:15 +0100 fs r265683 : #i94068# properly display erros happening during a form operation - at least once, and at most once
2008-12-18 11:28:29 +0100 fs r265677 : document the new InputRequired property
2008-12-18 11:04:15 +0100 fs r265676 : #i96530# createControlLabelPair: don't actually create a label for a checkbox
2008-12-18 10:35:53 +0100 fs r265674 : #i95226# when a column is replaced, and it's the selected column, update the selection
2008-12-18 10:34:42 +0100 fs r265673 : #i95226# refactoring of the implReplaced method
2008-12-18 10:34:28 +0100 fs r265672 : #i95226# when replacing a grid column, update the property browser
2008-12-18 10:33:17 +0100 fs r265671 : when an element is removed, remove it from m_aCurrentSelection, too (if necessary)
2008-12-18 10:31:57 +0100 fs r265670 : Hide Columns text slightly changed
2008-12-18 10:15:56 +0100 lla r265669 : #i14538# do not allow to press finish button twice
2008-12-18 08:56:33 +0100 lla r265665 : #i10000# build depend=t problem hacked.
2008-12-17 20:59:10 +0100 fs r265656 : #i89821# don't let a MultiLineEdit select all text when it receives the focus
2008-12-17 12:10:54 +0100 fs r265594 : #i97356#
2008-12-17 12:06:29 +0100 fs r265593 : #i97355# Print -> Printable
2008-12-17 11:59:31 +0100 fs r265591 : #i97350# combo boxes comment on list selection (as list boxes already do)
2008-12-16 09:53:57 +0100 lla r265527 : #i96526# handling none existance default.otr
2008-12-15 14:48:39 +0100 lla r265500 : #i79423# reparing, was wrong implemented
2008-12-12 15:08:33 +0100 lla r265424 : #i10000# remove wrong carridge returns
2008-12-12 15:07:55 +0100 lla r265423 : #i10000# remove wrong carridge returns
2008-12-12 15:06:41 +0100 lla r265422 : #i10000# remove wrong carridge returns
2008-12-12 10:23:13 +0100 lla r265395 : #i95234# reset DragDelta
2008-12-12 10:11:02 +0100 lla r265393 : #i79423# pre versions of shrink buttons
2008-12-11 15:32:13 +0100 fs r265318 : prevent a deadlock during complex.dbaccess.DatabaseDocument test
2008-12-11 15:30:06 +0100 fs r265316 : prevent a deadlock during complex.dbaccess.DatabaseDocument test
2008-12-11 15:07:05 +0100 fs r265307 : removed superfluous text
2008-12-11 12:29:54 +0100 lla r265282 : #i96757# cleanup second try
2008-12-11 12:09:15 +0100 lla r265278 : #i96757# cleanup
2008-12-11 12:07:56 +0100 lla r265277 : #i95234#
2008-12-10 14:04:39 +0100 lla r265183 : #i93472# D&D fixes
2008-12-10 12:29:33 +0100 lla r265168 : #i94067# add (APP|SYS)FONT to XUnitConversion
2008-12-10 12:15:02 +0100 lla r265166 : #i94067# add APPFONT, SYSFONT to MeasureUnit
2008-12-10 11:52:10 +0100 lla r265163 : #i94067# add comments
2008-12-06 20:33:05 +0100 fs r264935 : #i10000# precompiled header
2008-12-05 09:29:26 +0100 fs r264889 : #i10000#
2008-12-05 09:07:31 +0100 fs r264888 : #i10000#
2008-12-04 13:25:46 +0100 fs r264838 : CWS-TOOLING: rebase CWS dba32a to trunk@264807 (milestone: DEV300:m37)
2008-12-03 23:49:13 +0100 fs r264808 : merge changes from trunk, to be able to do a rebase
2008-12-03 17:13:09 +0100 lla r264801 : #i91041# update documentation
2008-12-03 16:57:04 +0100 lla r264799 : #i94067# allow convert(Point|Size)ToLogic as pixel also
2008-12-02 12:36:32 +0100 lla r264687 : #i96782# bring toolbar objects to menu structure
2008-12-02 10:32:44 +0100 lla r264667 : #i86255# make property work
2008-12-02 09:22:47 +0100 lla r264659 : #i79423# add section shrink toolbar
2008-12-02 07:41:22 +0100 lla r264657 : #i86255# add check box for Escape DateTime property
2008-12-02 07:37:17 +0100 lla r264656 : #i79423# new shrink buttons
2008-11-26 11:55:28 +0100 fs r264362 : #i96541#
FillPropertySet: do not only catch UnknownPropertyException when setting the Char/ParaAutoStyleName,
but also care for the other exceptions which can be thrown by XPropertySet::setPropertyValue.
This is actually not the real fix for #i96541#, but only a follow-up. The root cause of the issue
was fixed in CWS dba301b, but this here was another (potential) bug which popped up during investigations.
2008-11-25 09:04:40 +0100 lla r264273 : #i82083# new toolbox in GroupsSorting dialog
2008-11-25 08:56:08 +0100 lla r264272 : #i94729# change token strings into string list, move class out of function
2008-11-24 15:52:22 +0100 fs r264251 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear
2008-11-24 15:51:45 +0100 fs r264249 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear
2008-11-24 15:45:21 +0100 fs r264244 : #i96532# the API default for ParamNameSubst is false
2008-11-24 15:45:04 +0100 fs r264243 : #i96532# do not set AppendTableAlias, NameLengthLimit, etc., if the OXMLDataSourceInstance is used for elements at which those attributes never appear
2008-11-24 15:44:14 +0100 fs r264241 : #i96532# slight refactoring of exporting properties which have a XML default different from the API default
2008-11-24 10:50:01 +0100 lla r264216 : #i82083# icons for new toolbox
2008-11-24 09:38:45 +0100 lla r264205 : #i82083# new toolbox in GroupsSorting dialog
2008-11-24 09:32:20 +0100 lla r264201 : #i96501# cleanup assertions
2008-11-24 09:12:55 +0100 lla r264198 : #i83082# enhancement for toolboxes, better HC comfort
2008-11-24 08:46:43 +0100 lla r264197 : #i96501# fix problem with negative positions
2008-11-21 11:44:47 +0100 fs r264118 : #i57042# introduce a counter for suspending change notifications of a given property, so recursive calls are possible
2008-11-21 11:02:17 +0100 fs r264116 : #i96388# don't call ExecuteContextMenuAction when no action was chosen by the user
2008-11-21 10:36:53 +0100 fs r264114 : #i47384# assertion was wrong
2008-11-14 12:33:15 +0100 fs r263673 : #i47318# XRowSetChangeBroadcaster/Listener, to be able to listen for changes in an XRowSetSupplier's RowSet
2008-11-14 12:30:29 +0100 fs r263672 : #i47318# more refactoring
- BoundControlModels now listen at the XRowSetSupplier for changes in the supplied
RowSet, to properly revoke/register old/new listeners at the RowSet
- replaced ::osl::Mutex in various places with a ControlModelLock
2008-11-14 12:20:55 +0100 fs r263671 : when BUILD_TYPE includes QADEVOOO, the BUILD_QADEVOOO needs to bet set, too
2008-11-14 12:19:21 +0100 fs r263670 : oops, this was not intended to be committed
2008-11-12 11:08:10 +0100 fs r263579 : #i96096# new ctors taking UNO_QUERY_THROW
2008-11-12 09:15:54 +0100 fs r263576 : no need to load the complete dialog just to get a string which the dialog itself loads from resource
2008-11-10 17:55:45 +0100 fs r263535 : spelling in comment
2008-11-10 15:51:14 +0100 fs r263523 : #i47318# various refactorings
1. don't forward syntetic XLoadListener events from the grid control to
the grid columns. Instead, forward GridColumn::XChild::setParent to
the base class, which then can add itself as load listener
2. removed various occurances of XMultiServiceFactory, instead use the
::comphelper::ComponentContext
3. in O(Bound)ControlModel, have a mechanism to lock the instance (using
ControlModelLock) and fire property changes when the last lock dies.
2008-11-10 12:49:24 +0100 oj r263513 : #i94729# change token strings into string list
2008-11-10 12:13:15 +0100 oj r263512 : #i95222# export chart:title style as well
2008-11-10 08:55:25 +0100 oj r263507 : #i93471# show the correct tabpage when selecting a different object
2008-11-07 23:38:29 +0100 fs r263490 : #i95977# for the event input controls, add a component extending their functionality so they're reset when the users presses DEL
2008-11-07 23:35:39 +0100 fs r263489 : during #i95977#: When a VCL Window is deleted from within VCL code, the respective WindowPeer was never disposed. Corrected this.
2008-11-07 14:57:07 +0100 fs r263420 : #i95963# human-readable display names for event bindings
2008-11-06 10:34:52 +0100 fs r263366 : #i95865# don't use library names containing InvalidZipEntryFileNames - workaround until i95409 is fixed
2008-11-06 10:33:28 +0100 fs r263365 : #i95865#
copied the following change from CWS odfmetadata2 (not yet integrated) into CWS dba31d
- comphelper/inc/comphelper/storagehelper.hxx,
comphelper/source/misc/storagehelper.cxx:
+ add function IsValidZipEntryFileName (moved from module package)
2009-04-22 11:01:27 +00:00
|
|
|
|
2011-11-24 19:45:09 +00:00
|
|
|
void SetToolbarLayoutMode( ToolBoxLayoutMode eLayout );
|
2007-04-11 17:15:08 +00:00
|
|
|
};
|
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
inline void ToolBox::CheckItem( sal_uInt16 nItemId, bool bCheck )
|
2007-04-11 17:15:08 +00:00
|
|
|
{
|
2014-02-24 12:25:02 +01:00
|
|
|
SetItemState( nItemId, (bCheck) ? TRISTATE_TRUE : TRISTATE_FALSE );
|
2007-04-11 17:15:08 +00:00
|
|
|
}
|
|
|
|
|
2014-02-21 12:53:51 +01:00
|
|
|
inline bool ToolBox::IsItemChecked( sal_uInt16 nItemId ) const
|
2007-04-11 17:15:08 +00:00
|
|
|
{
|
2014-02-24 12:25:02 +01:00
|
|
|
return (GetItemState( nItemId ) == TRISTATE_TRUE);
|
2007-04-11 17:15:08 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
inline Size ToolBox::CalcWindowSizePixel() const
|
|
|
|
{
|
|
|
|
return CalcWindowSizePixel( mnLines );
|
|
|
|
}
|
|
|
|
|
|
|
|
inline Rectangle ToolBox::GetScrollRect() const
|
|
|
|
{
|
|
|
|
return maUpperRect.GetUnion( maLowerRect );
|
|
|
|
}
|
|
|
|
|
|
|
|
inline void ToolBox::SetDockingRects( const Rectangle& rOutRect,
|
|
|
|
const Rectangle& rInRect )
|
|
|
|
{
|
|
|
|
maOutDockRect = rOutRect;
|
|
|
|
maInDockRect = rInRect;
|
|
|
|
}
|
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
inline void ToolBox::SetFloatingLines( sal_uInt16 nNewLines )
|
2007-04-11 17:15:08 +00:00
|
|
|
{
|
|
|
|
mnFloatLines = nNewLines;
|
|
|
|
}
|
|
|
|
|
2010-09-29 15:46:40 +08:00
|
|
|
inline sal_uInt16 ToolBox::GetFloatingLines() const
|
2007-04-11 17:15:08 +00:00
|
|
|
{
|
|
|
|
return mnFloatLines;
|
|
|
|
}
|
|
|
|
|
2013-10-23 19:10:20 +02:00
|
|
|
#endif // INCLUDED_VCL_TOOLBOX_HXX
|
2010-10-14 08:27:31 +02:00
|
|
|
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|