2010-10-27 06:43:08 -05:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2000-09-18 11:07:07 -05:00
|
|
|
/*************************************************************************
|
|
|
|
*
|
2008-04-10 12:52:14 -05:00
|
|
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
2010-02-12 08:01:35 -06:00
|
|
|
* Copyright 2000, 2010 Oracle and/or its affiliates.
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
2008-04-10 12:52:14 -05:00
|
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
2008-04-10 12:52:14 -05:00
|
|
|
* This file is part of OpenOffice.org.
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
2008-04-10 12:52:14 -05:00
|
|
|
* OpenOffice.org is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU Lesser General Public License version 3
|
|
|
|
* only, as published by the Free Software Foundation.
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
2008-04-10 12:52:14 -05:00
|
|
|
* OpenOffice.org is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU Lesser General Public License version 3 for more details
|
|
|
|
* (a copy is included in the LICENSE file that accompanied this code).
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
2008-04-10 12:52:14 -05:00
|
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
|
|
* version 3 along with OpenOffice.org. If not, see
|
|
|
|
* <http://www.openoffice.org/license.html>
|
|
|
|
* for a copy of the LGPLv3 License.
|
2000-09-18 11:07:07 -05:00
|
|
|
*
|
|
|
|
************************************************************************/
|
|
|
|
|
|
|
|
#ifndef SC_SCMOD_HXX
|
|
|
|
#define SC_SCMOD_HXX
|
|
|
|
|
2004-08-23 03:26:06 -05:00
|
|
|
#include "scdllapi.h"
|
2000-09-18 11:07:07 -05:00
|
|
|
#include "scdll.hxx"
|
|
|
|
#include <vcl/timer.hxx>
|
2009-10-15 17:05:16 -05:00
|
|
|
#include <svl/lstner.hxx>
|
2000-09-18 11:07:07 -05:00
|
|
|
#include "global.hxx" // ScInputMode
|
|
|
|
#include "markdata.hxx" //ScMarkData
|
|
|
|
#include "shellids.hxx"
|
2009-10-15 17:05:16 -05:00
|
|
|
#include <unotools/options.hxx>
|
2004-10-04 14:04:03 -05:00
|
|
|
#include <tools/shl.hxx>
|
|
|
|
|
2009-11-16 06:48:33 -06:00
|
|
|
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
|
|
|
#include <map>
|
|
|
|
#include <list>
|
|
|
|
#include <algorithm>
|
|
|
|
//-->Added by PengYunQuan for Validity Cell Range Picker
|
|
|
|
|
2004-10-04 14:04:03 -05:00
|
|
|
|
2000-09-18 11:07:07 -05:00
|
|
|
class KeyEvent;
|
|
|
|
class SdrModel;
|
|
|
|
class SdrView;
|
|
|
|
class EditView;
|
|
|
|
class SfxErrorHandler;
|
|
|
|
class SvxErrorHandler;
|
2002-04-24 07:35:43 -05:00
|
|
|
class SvtAccessibilityOptions;
|
2003-05-27 09:07:24 -05:00
|
|
|
class SvtCTLOptions;
|
2004-04-29 10:33:52 -05:00
|
|
|
class SvtUserOptions;
|
2002-04-24 07:35:43 -05:00
|
|
|
|
2003-03-26 11:07:02 -06:00
|
|
|
namespace svtools { class ColorConfig; }
|
2000-09-18 11:07:07 -05:00
|
|
|
|
|
|
|
class ScRange;
|
|
|
|
class ScDocument;
|
|
|
|
class ScViewCfg;
|
|
|
|
class ScDocCfg;
|
|
|
|
class ScAppCfg;
|
|
|
|
class ScInputCfg;
|
2001-05-29 13:46:58 -05:00
|
|
|
class ScPrintCfg;
|
2000-09-18 11:07:07 -05:00
|
|
|
class ScViewOptions;
|
|
|
|
class ScDocOptions;
|
|
|
|
class ScAppOptions;
|
|
|
|
class ScInputOptions;
|
2001-05-29 13:46:58 -05:00
|
|
|
class ScPrintOptions;
|
2000-09-18 11:07:07 -05:00
|
|
|
class ScInputHandler;
|
|
|
|
class ScInputWindow;
|
|
|
|
class ScTabViewShell;
|
|
|
|
class ScFunctionDlg;
|
|
|
|
class ScArgDlgBase;
|
|
|
|
class ScEditFunctionDlg;
|
|
|
|
class ScMessagePool;
|
|
|
|
class EditFieldInfo;
|
|
|
|
class ScNavipiCfg;
|
2006-08-04 06:11:26 -05:00
|
|
|
class ScAddInCfg;
|
CWS-TOOLING: integrate CWS frmdlg
2008-12-18 09:13:09 +0100 oj r265667 : merge from odff05
2008-12-18 07:58:16 +0100 oj r265658 : #i94555# patch from <regina>, ODFF:
Add GAMMA, CHISQDIST, CHISQINV.
Make the 'cumulative' parameter of GAMMADIST optional.
Adapt the domain of CHIDIST to allow negative x.
Remove the constraint "degrees of freedom < 1.0E5" from CHIDIST and CHIINV.
Plus a mechanism to write the now optional parameter of GAMMADIST to PODF and
ODFF if omitted, for backwards compatibility.
2008-12-15 14:06:11 +0100 oj r265490 : CWS-TOOLING: rebase CWS frmdlg to trunk@264807 (milestone: DEV300:m37)
2008-12-15 13:55:28 +0100 oj r265488 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:55:07 +0100 oj r265487 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:54:48 +0100 oj r265486 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:54:36 +0100 oj r265485 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:54:24 +0100 oj r265484 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:48:11 +0100 oj r265483 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:31:12 +0100 oj r265479 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:13:58 +0100 oj r265477 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:10:09 +0100 oj r265476 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:05:11 +0100 oj r265475 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 10:47:17 +0100 oj r265467 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 10:46:19 +0100 oj r265466 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 10:45:47 +0100 oj r265465 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 07:35:07 +0100 oj r265458 : add dependency to formula
2008-12-15 07:34:24 +0100 oj r265457 : add dependency to formula
2008-12-12 13:22:00 +0100 msc r265413 : #i97089#
2008-12-12 13:20:25 +0100 msc r265412 : #i97089#
2008-12-12 12:35:12 +0100 msc r265406 : #i97089#
2008-12-12 12:34:16 +0100 msc r265405 : #i97089#
2008-12-12 12:33:05 +0100 msc r265404 : #i97089#
2008-12-12 12:31:11 +0100 msc r265403 : #i97089#
2008-12-08 11:59:10 +0100 oj r264981 : insert RTL_LOG
2008-12-08 11:50:17 +0100 oj r264980 : some small changes
2008-12-05 12:57:57 +0100 oj r264902 : eof changed
2008-12-05 12:56:46 +0100 oj r264901 : eof changed
2008-12-05 12:28:47 +0100 oj r264899 : wrong var used
2008-12-05 10:08:57 +0100 oj r264890 : token order reversed
2008-12-04 13:49:22 +0100 oc r264843 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:45:27 +0100 oc r264842 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:42:54 +0100 oc r264841 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:37:41 +0100 oc r264840 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:34:11 +0100 oc r264839 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 12:35:31 +0100 oj r264835 : new help ids for struct and function tabpage
2008-12-04 12:00:35 +0100 oj r264828 : set explicit help id
2008-12-03 14:53:27 +0100 oj r264786 : #i96845# change ref button
2008-12-03 14:51:49 +0100 oj r264785 : #i96845# change ref button
2008-12-03 08:51:57 +0100 oj r264746 : convert dos to unix lineends
2008-12-03 08:50:45 +0100 oj r264745 : convert dos to unix lineends
2008-12-03 08:50:05 +0100 oj r264744 : convert dos to unix lineends
2008-12-02 12:28:33 +0100 oj r264686 : clear help text when new helpid is set
2008-12-02 12:28:02 +0100 oj r264685 : set help id for listbox category
2008-12-02 07:15:56 +0100 oj r264655 : remove define to auto generate help ids
2008-12-01 14:36:43 +0100 oj r264604 : use temp var
2008-12-01 14:18:31 +0100 oj r264601 : moved ScJumpToken to formula
2008-12-01 14:18:11 +0100 oj r264600 : moved ScJumpToken to formula
2008-12-01 14:14:35 +0100 oj r264599 : moved ScJumpToken from sc
2008-12-01 10:48:51 +0100 oj r264589 : change quickhelptext from Shrink to Select
2008-12-01 10:28:41 +0100 oj r264588 : fix opcode data, has to be Any.Void
2008-11-28 11:16:48 +0100 oj r264532 : add help ids
2008-11-28 10:16:56 +0100 oj r264529 : set help id
2008-11-28 10:16:43 +0100 oj r264528 : set help id
2008-11-26 13:55:04 +0100 oj r264381 : #94535# use of optional instead of deleting a string myself and some small changes
2008-11-26 09:53:20 +0100 oj r264346 : compile error with debug/without debug
2008-11-25 07:41:28 +0100 oj r264271 : put static into the method which make use of them
2008-11-24 08:16:07 +0100 oj r264196 : removed not needed classes for op code
2008-11-24 08:13:44 +0100 oj r264195 : removed not needed classes for op code
2008-11-21 14:05:53 +0100 oj r264135 : make GetOpCode inline
2008-11-21 12:35:27 +0100 oj r264124 : hold symbols
2008-11-20 09:27:27 +0100 oj r264028 : merged code from DEV300_m35 which got lost
2008-11-19 20:42:12 +0100 oj r264022 : more changes for formula dialog remove
2008-11-19 20:37:41 +0100 oj r264021 : removed unused var
2008-11-19 20:35:35 +0100 oj r264020 : some more changes at token
2008-11-19 10:59:47 +0100 oj r263967 : deleted
2008-11-19 10:58:24 +0100 oj r263966 : add forui and for res files
2008-11-18 15:27:36 +0100 oj r263777 : unused para removed
2008-11-18 15:23:23 +0100 oj r263775 : add insert button to add field dlg
2008-11-18 13:39:53 +0100 oj r263764 : enable the formula dialog as well for conditional print as for conditional formatting
2008-11-18 12:03:25 +0100 oj r263760 : rename isRef in IsRef
2008-11-17 11:46:16 +0100 oj r263711 : patches for function handling
2008-11-17 11:36:22 +0100 oj r263710 : add new for forui and res file
2008-11-17 09:21:12 +0100 oj r263704 : patches for some resource for libformula
2008-11-15 12:45:30 +0100 oj r263701 : changes for formula editor extraction
2008-11-07 08:23:27 +0100 oj r263416 : merge from DEV300:m35
2008-11-07 08:22:35 +0100 oj r263415 : merge from DEV300:m35
2008-11-07 08:22:16 +0100 oj r263414 : merge from DEV300:m35
2008-11-07 08:21:41 +0100 oj r263413 : merge from DEV300:m35
2008-11-07 08:21:31 +0100 oj r263412 : merge from DEV300:m35
2008-11-07 08:20:38 +0100 oj r263411 : merge from DEV300:m35
2008-11-07 08:20:00 +0100 oj r263410 : merge from DEV300:m35
2008-11-07 08:18:50 +0100 oj r263409 : merge from DEV300:m35
2008-11-07 08:18:19 +0100 oj r263408 : merge from DEV300:m35
2008-11-07 08:10:27 +0100 oj r263407 : merge from DEV300:m35
2008-10-21 07:43:46 +0200 oj r262560 : some compile errors resolved
2008-10-17 16:40:01 +0200 oj r262291 : dep for 1st target
2008-10-07 10:08:39 +0200 oj r262077 : copy
2008-10-07 09:45:31 +0200 oj r262076 : #i94535#
2008-10-07 09:44:26 +0200 oj r262075 : #i94535# new base class
2008-10-07 09:43:21 +0200 oj r262074 : moved to formula
2008-10-07 09:41:51 +0200 oj r262073 : new images
2008-10-07 09:03:01 +0200 oj r262072 : new ids for formula
2008-10-02 08:46:27 +0200 oj r262024 : #i94535# move the formula compiler to formula
2008-10-02 08:08:54 +0200 oj r262023 : #i94535#
2008-10-02 08:06:28 +0200 oj r262022 : #i94535#
2008-10-02 08:05:52 +0200 oj r262021 : #i94535#
2008-10-01 17:15:29 +0200 oj r262014 : #i94535#
2008-10-01 17:12:40 +0200 oj r262013 : new module formula
2008-10-01 17:04:55 +0200 oj r262012 : #i94535#
2008-10-01 16:49:03 +0200 oj r262010 : #i94535#
2008-10-01 16:46:59 +0200 oj r262009 : #i94535#
2009-01-08 04:47:13 -06:00
|
|
|
|
2001-02-14 12:12:19 -06:00
|
|
|
class ScTransferObj;
|
|
|
|
class ScDrawTransferObj;
|
2001-10-02 12:32:43 -05:00
|
|
|
class ScSelectionTransferObj;
|
2000-09-18 11:07:07 -05:00
|
|
|
|
CWS-TOOLING: integrate CWS frmdlg
2008-12-18 09:13:09 +0100 oj r265667 : merge from odff05
2008-12-18 07:58:16 +0100 oj r265658 : #i94555# patch from <regina>, ODFF:
Add GAMMA, CHISQDIST, CHISQINV.
Make the 'cumulative' parameter of GAMMADIST optional.
Adapt the domain of CHIDIST to allow negative x.
Remove the constraint "degrees of freedom < 1.0E5" from CHIDIST and CHIINV.
Plus a mechanism to write the now optional parameter of GAMMADIST to PODF and
ODFF if omitted, for backwards compatibility.
2008-12-15 14:06:11 +0100 oj r265490 : CWS-TOOLING: rebase CWS frmdlg to trunk@264807 (milestone: DEV300:m37)
2008-12-15 13:55:28 +0100 oj r265488 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:55:07 +0100 oj r265487 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:54:48 +0100 oj r265486 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:54:36 +0100 oj r265485 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:54:24 +0100 oj r265484 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:48:11 +0100 oj r265483 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:31:12 +0100 oj r265479 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:13:58 +0100 oj r265477 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:10:09 +0100 oj r265476 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 13:05:11 +0100 oj r265475 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 10:47:17 +0100 oj r265467 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 10:46:19 +0100 oj r265466 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 10:45:47 +0100 oj r265465 : CWS-TOOLING: do not delete this file, it's needed for 'cws rebase -C'
CWS: frmdlg
New MWS: DEV300
New milestone: m37
2008-12-15 07:35:07 +0100 oj r265458 : add dependency to formula
2008-12-15 07:34:24 +0100 oj r265457 : add dependency to formula
2008-12-12 13:22:00 +0100 msc r265413 : #i97089#
2008-12-12 13:20:25 +0100 msc r265412 : #i97089#
2008-12-12 12:35:12 +0100 msc r265406 : #i97089#
2008-12-12 12:34:16 +0100 msc r265405 : #i97089#
2008-12-12 12:33:05 +0100 msc r265404 : #i97089#
2008-12-12 12:31:11 +0100 msc r265403 : #i97089#
2008-12-08 11:59:10 +0100 oj r264981 : insert RTL_LOG
2008-12-08 11:50:17 +0100 oj r264980 : some small changes
2008-12-05 12:57:57 +0100 oj r264902 : eof changed
2008-12-05 12:56:46 +0100 oj r264901 : eof changed
2008-12-05 12:28:47 +0100 oj r264899 : wrong var used
2008-12-05 10:08:57 +0100 oj r264890 : token order reversed
2008-12-04 13:49:22 +0100 oc r264843 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:45:27 +0100 oc r264842 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:42:54 +0100 oc r264841 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:37:41 +0100 oc r264840 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 13:34:11 +0100 oc r264839 : #i96688: Adapt autotests because of outsourced functionwizard
2008-12-04 12:35:31 +0100 oj r264835 : new help ids for struct and function tabpage
2008-12-04 12:00:35 +0100 oj r264828 : set explicit help id
2008-12-03 14:53:27 +0100 oj r264786 : #i96845# change ref button
2008-12-03 14:51:49 +0100 oj r264785 : #i96845# change ref button
2008-12-03 08:51:57 +0100 oj r264746 : convert dos to unix lineends
2008-12-03 08:50:45 +0100 oj r264745 : convert dos to unix lineends
2008-12-03 08:50:05 +0100 oj r264744 : convert dos to unix lineends
2008-12-02 12:28:33 +0100 oj r264686 : clear help text when new helpid is set
2008-12-02 12:28:02 +0100 oj r264685 : set help id for listbox category
2008-12-02 07:15:56 +0100 oj r264655 : remove define to auto generate help ids
2008-12-01 14:36:43 +0100 oj r264604 : use temp var
2008-12-01 14:18:31 +0100 oj r264601 : moved ScJumpToken to formula
2008-12-01 14:18:11 +0100 oj r264600 : moved ScJumpToken to formula
2008-12-01 14:14:35 +0100 oj r264599 : moved ScJumpToken from sc
2008-12-01 10:48:51 +0100 oj r264589 : change quickhelptext from Shrink to Select
2008-12-01 10:28:41 +0100 oj r264588 : fix opcode data, has to be Any.Void
2008-11-28 11:16:48 +0100 oj r264532 : add help ids
2008-11-28 10:16:56 +0100 oj r264529 : set help id
2008-11-28 10:16:43 +0100 oj r264528 : set help id
2008-11-26 13:55:04 +0100 oj r264381 : #94535# use of optional instead of deleting a string myself and some small changes
2008-11-26 09:53:20 +0100 oj r264346 : compile error with debug/without debug
2008-11-25 07:41:28 +0100 oj r264271 : put static into the method which make use of them
2008-11-24 08:16:07 +0100 oj r264196 : removed not needed classes for op code
2008-11-24 08:13:44 +0100 oj r264195 : removed not needed classes for op code
2008-11-21 14:05:53 +0100 oj r264135 : make GetOpCode inline
2008-11-21 12:35:27 +0100 oj r264124 : hold symbols
2008-11-20 09:27:27 +0100 oj r264028 : merged code from DEV300_m35 which got lost
2008-11-19 20:42:12 +0100 oj r264022 : more changes for formula dialog remove
2008-11-19 20:37:41 +0100 oj r264021 : removed unused var
2008-11-19 20:35:35 +0100 oj r264020 : some more changes at token
2008-11-19 10:59:47 +0100 oj r263967 : deleted
2008-11-19 10:58:24 +0100 oj r263966 : add forui and for res files
2008-11-18 15:27:36 +0100 oj r263777 : unused para removed
2008-11-18 15:23:23 +0100 oj r263775 : add insert button to add field dlg
2008-11-18 13:39:53 +0100 oj r263764 : enable the formula dialog as well for conditional print as for conditional formatting
2008-11-18 12:03:25 +0100 oj r263760 : rename isRef in IsRef
2008-11-17 11:46:16 +0100 oj r263711 : patches for function handling
2008-11-17 11:36:22 +0100 oj r263710 : add new for forui and res file
2008-11-17 09:21:12 +0100 oj r263704 : patches for some resource for libformula
2008-11-15 12:45:30 +0100 oj r263701 : changes for formula editor extraction
2008-11-07 08:23:27 +0100 oj r263416 : merge from DEV300:m35
2008-11-07 08:22:35 +0100 oj r263415 : merge from DEV300:m35
2008-11-07 08:22:16 +0100 oj r263414 : merge from DEV300:m35
2008-11-07 08:21:41 +0100 oj r263413 : merge from DEV300:m35
2008-11-07 08:21:31 +0100 oj r263412 : merge from DEV300:m35
2008-11-07 08:20:38 +0100 oj r263411 : merge from DEV300:m35
2008-11-07 08:20:00 +0100 oj r263410 : merge from DEV300:m35
2008-11-07 08:18:50 +0100 oj r263409 : merge from DEV300:m35
2008-11-07 08:18:19 +0100 oj r263408 : merge from DEV300:m35
2008-11-07 08:10:27 +0100 oj r263407 : merge from DEV300:m35
2008-10-21 07:43:46 +0200 oj r262560 : some compile errors resolved
2008-10-17 16:40:01 +0200 oj r262291 : dep for 1st target
2008-10-07 10:08:39 +0200 oj r262077 : copy
2008-10-07 09:45:31 +0200 oj r262076 : #i94535#
2008-10-07 09:44:26 +0200 oj r262075 : #i94535# new base class
2008-10-07 09:43:21 +0200 oj r262074 : moved to formula
2008-10-07 09:41:51 +0200 oj r262073 : new images
2008-10-07 09:03:01 +0200 oj r262072 : new ids for formula
2008-10-02 08:46:27 +0200 oj r262024 : #i94535# move the formula compiler to formula
2008-10-02 08:08:54 +0200 oj r262023 : #i94535#
2008-10-02 08:06:28 +0200 oj r262022 : #i94535#
2008-10-02 08:05:52 +0200 oj r262021 : #i94535#
2008-10-01 17:15:29 +0200 oj r262014 : #i94535#
2008-10-01 17:12:40 +0200 oj r262013 : new module formula
2008-10-01 17:04:55 +0200 oj r262012 : #i94535#
2008-10-01 16:49:03 +0200 oj r262010 : #i94535#
2008-10-01 16:46:59 +0200 oj r262009 : #i94535#
2009-01-08 04:47:13 -06:00
|
|
|
class ScFormEditData;
|
|
|
|
|
2000-09-18 11:07:07 -05:00
|
|
|
//==================================================================
|
|
|
|
|
|
|
|
// for internal Drag&Drop:
|
|
|
|
|
|
|
|
#define SC_DROP_NAVIGATOR 1
|
|
|
|
#define SC_DROP_TABLE 2
|
|
|
|
|
|
|
|
struct ScDragData
|
|
|
|
{
|
2001-03-23 12:26:39 -06:00
|
|
|
ScTransferObj* pCellTransfer;
|
|
|
|
ScDrawTransferObj* pDrawTransfer;
|
|
|
|
|
|
|
|
String aLinkDoc;
|
|
|
|
String aLinkTable;
|
|
|
|
String aLinkArea;
|
|
|
|
ScDocument* pJumpLocalDoc;
|
|
|
|
String aJumpTarget;
|
|
|
|
String aJumpText;
|
2000-09-18 11:07:07 -05:00
|
|
|
};
|
|
|
|
|
2001-02-14 12:12:19 -06:00
|
|
|
struct ScClipData
|
|
|
|
{
|
|
|
|
ScTransferObj* pCellClipboard;
|
|
|
|
ScDrawTransferObj* pDrawClipboard;
|
|
|
|
};
|
|
|
|
|
2000-09-18 11:07:07 -05:00
|
|
|
//==================================================================
|
|
|
|
|
|
|
|
|
2009-10-15 17:05:16 -05:00
|
|
|
class ScModule: public SfxModule, public SfxListener, utl::ConfigurationListener
|
2000-09-18 11:07:07 -05:00
|
|
|
{
|
|
|
|
Timer aIdleTimer;
|
|
|
|
Timer aSpellTimer;
|
|
|
|
ScDragData aDragData;
|
2001-02-14 12:12:19 -06:00
|
|
|
ScClipData aClipData;
|
2001-10-02 12:32:43 -05:00
|
|
|
ScSelectionTransferObj* pSelTransfer;
|
2000-09-18 11:07:07 -05:00
|
|
|
ScMessagePool* pMessagePool;
|
|
|
|
// globalen InputHandler gibt's nicht mehr, jede View hat einen
|
|
|
|
ScInputHandler* pRefInputHandler;
|
|
|
|
ScViewCfg* pViewCfg;
|
|
|
|
ScDocCfg* pDocCfg;
|
|
|
|
ScAppCfg* pAppCfg;
|
|
|
|
ScInputCfg* pInputCfg;
|
2001-05-29 13:46:58 -05:00
|
|
|
ScPrintCfg* pPrintCfg;
|
2000-09-18 11:07:07 -05:00
|
|
|
ScNavipiCfg* pNavipiCfg;
|
2006-08-04 06:11:26 -05:00
|
|
|
ScAddInCfg* pAddInCfg;
|
2003-03-26 11:07:02 -06:00
|
|
|
svtools::ColorConfig* pColorConfig;
|
2002-04-24 07:35:43 -05:00
|
|
|
SvtAccessibilityOptions* pAccessOptions;
|
2003-05-27 09:07:24 -05:00
|
|
|
SvtCTLOptions* pCTLOptions;
|
2004-04-29 10:33:52 -05:00
|
|
|
SvtUserOptions* pUserOptions;
|
2000-09-18 11:07:07 -05:00
|
|
|
SfxErrorHandler* pErrorHdl;
|
|
|
|
SvxErrorHandler* pSvxErrorHdl;
|
|
|
|
ScFormEditData* pFormEditData;
|
|
|
|
USHORT nCurRefDlgId;
|
|
|
|
BOOL bIsWaterCan;
|
|
|
|
BOOL bIsInEditCommand;
|
2004-09-08 09:28:31 -05:00
|
|
|
BOOL bIsInExecuteDrop;
|
2008-03-07 05:15:47 -06:00
|
|
|
bool mbIsInSharedDocLoading;
|
|
|
|
bool mbIsInSharedDocSaving;
|
2000-09-18 11:07:07 -05:00
|
|
|
|
2009-11-16 06:48:33 -06:00
|
|
|
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
|
|
|
std::map<USHORT, std::list<Window*> > m_mapRefWindow;
|
|
|
|
//-->Added by PengYunQuan for Validity Cell Range Picker
|
2000-09-18 11:07:07 -05:00
|
|
|
public:
|
2007-02-27 04:57:59 -06:00
|
|
|
SFX_DECL_INTERFACE(SCID_APP)
|
2000-09-18 11:07:07 -05:00
|
|
|
|
|
|
|
ScModule( SfxObjectFactory* pFact );
|
|
|
|
virtual ~ScModule();
|
|
|
|
|
|
|
|
virtual void FillStatusBar(StatusBar &rBar);
|
|
|
|
virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
|
2009-10-15 17:05:16 -05:00
|
|
|
virtual void ConfigurationChanged( utl::ConfigurationBroadcaster*, sal_uInt32 );
|
2000-09-18 11:07:07 -05:00
|
|
|
void DeleteCfg();
|
|
|
|
|
|
|
|
// von der Applikation verschoben:
|
|
|
|
|
|
|
|
DECL_LINK( IdleHandler, Timer* ); // Timer statt idle
|
|
|
|
DECL_LINK( SpellTimerHdl, Timer* );
|
|
|
|
DECL_LINK( CalcFieldValueHdl, EditFieldInfo* );
|
|
|
|
|
|
|
|
void Execute( SfxRequest& rReq );
|
|
|
|
void GetState( SfxItemSet& rSet );
|
2005-11-16 03:12:22 -06:00
|
|
|
void HideDisabledSlots( SfxItemSet& rSet );
|
2000-09-18 11:07:07 -05:00
|
|
|
|
|
|
|
void AnythingChanged();
|
|
|
|
|
|
|
|
// Drag & Drop:
|
|
|
|
const ScDragData& GetDragData() const { return aDragData; }
|
2001-03-23 12:26:39 -06:00
|
|
|
void SetDragObject( ScTransferObj* pCellObj, ScDrawTransferObj* pDrawObj );
|
2000-09-18 11:07:07 -05:00
|
|
|
void ResetDragObject();
|
|
|
|
void SetDragLink( const String& rDoc, const String& rTab, const String& rArea );
|
|
|
|
void SetDragJump( ScDocument* pLocalDoc,
|
|
|
|
const String& rTarget, const String& rText );
|
|
|
|
|
2001-02-14 12:12:19 -06:00
|
|
|
// clipboard:
|
|
|
|
const ScClipData& GetClipData() const { return aClipData; }
|
|
|
|
void SetClipObject( ScTransferObj* pCellObj, ScDrawTransferObj* pDrawObj );
|
|
|
|
|
|
|
|
ScDocument* GetClipDoc(); // called from document - should be removed later
|
|
|
|
|
2001-10-02 12:32:43 -05:00
|
|
|
// X selection:
|
|
|
|
ScSelectionTransferObj* GetSelectionTransfer() const { return pSelTransfer; }
|
|
|
|
void SetSelectionTransfer( ScSelectionTransferObj* pNew );
|
|
|
|
|
2000-09-18 11:07:07 -05:00
|
|
|
void SetWaterCan( BOOL bNew ) { bIsWaterCan = bNew; }
|
|
|
|
BOOL GetIsWaterCan() const { return bIsWaterCan; }
|
|
|
|
|
|
|
|
void SetInEditCommand( BOOL bNew ) { bIsInEditCommand = bNew; }
|
|
|
|
BOOL IsInEditCommand() const { return bIsInEditCommand; }
|
|
|
|
|
2004-09-08 09:28:31 -05:00
|
|
|
void SetInExecuteDrop( BOOL bNew ) { bIsInExecuteDrop = bNew; }
|
|
|
|
BOOL IsInExecuteDrop() const { return bIsInExecuteDrop; }
|
|
|
|
|
2000-09-18 11:07:07 -05:00
|
|
|
// Options:
|
|
|
|
const ScViewOptions& GetViewOptions ();
|
2010-10-06 04:15:43 -05:00
|
|
|
SC_DLLPUBLIC const ScDocOptions& GetDocOptions ();
|
2004-08-23 03:26:06 -05:00
|
|
|
SC_DLLPUBLIC const ScAppOptions& GetAppOptions ();
|
2000-09-18 11:07:07 -05:00
|
|
|
const ScInputOptions& GetInputOptions ();
|
2004-08-23 03:26:06 -05:00
|
|
|
SC_DLLPUBLIC const ScPrintOptions& GetPrintOptions ();
|
2000-09-18 11:07:07 -05:00
|
|
|
void SetViewOptions ( const ScViewOptions& rOpt );
|
2010-10-06 04:15:43 -05:00
|
|
|
SC_DLLPUBLIC void SetDocOptions ( const ScDocOptions& rOpt );
|
2004-08-23 03:26:06 -05:00
|
|
|
SC_DLLPUBLIC void SetAppOptions ( const ScAppOptions& rOpt );
|
2000-09-18 11:07:07 -05:00
|
|
|
void SetInputOptions ( const ScInputOptions& rOpt );
|
2001-05-29 13:46:58 -05:00
|
|
|
void SetPrintOptions ( const ScPrintOptions& rOpt );
|
2000-09-18 11:07:07 -05:00
|
|
|
void InsertEntryToLRUList(USHORT nFIndex);
|
|
|
|
void RecentFunctionsChanged();
|
|
|
|
|
2000-11-26 06:38:36 -06:00
|
|
|
static void GetSpellSettings( USHORT& rDefLang, USHORT& rCjkLang, USHORT& rCtlLang,
|
2008-12-15 06:01:46 -06:00
|
|
|
BOOL& rAutoSpell );
|
2000-09-18 11:07:07 -05:00
|
|
|
static void SetAutoSpellProperty( BOOL bSet );
|
|
|
|
static BOOL HasThesaurusLanguage( USHORT nLang );
|
|
|
|
|
2003-05-27 09:07:24 -05:00
|
|
|
USHORT GetOptDigitLanguage(); // from CTL options
|
|
|
|
|
2000-09-18 11:07:07 -05:00
|
|
|
ScNavipiCfg& GetNavipiCfg();
|
2006-08-04 06:11:26 -05:00
|
|
|
ScAddInCfg& GetAddInCfg();
|
2003-03-26 11:07:02 -06:00
|
|
|
svtools::ColorConfig& GetColorConfig();
|
2002-04-24 07:35:43 -05:00
|
|
|
SvtAccessibilityOptions& GetAccessOptions();
|
2003-05-27 09:07:24 -05:00
|
|
|
SvtCTLOptions& GetCTLOptions();
|
2004-04-29 10:33:52 -05:00
|
|
|
SvtUserOptions& GetUserOptions();
|
2000-09-18 11:07:07 -05:00
|
|
|
|
|
|
|
void ModifyOptions( const SfxItemSet& rOptSet );
|
|
|
|
|
|
|
|
// InputHandler:
|
|
|
|
BOOL IsEditMode(); // nicht bei SC_INPUT_TYPE
|
|
|
|
BOOL IsInputMode(); // auch bei SC_INPUT_TYPE
|
|
|
|
void SetInputMode( ScInputMode eMode );
|
|
|
|
BOOL InputKeyEvent( const KeyEvent& rKEvt, BOOL bStartEdit = FALSE );
|
2007-04-25 09:57:47 -05:00
|
|
|
SC_DLLPUBLIC void InputEnterHandler( BYTE nBlockMode = 0 );
|
2000-09-18 11:07:07 -05:00
|
|
|
void InputCancelHandler();
|
|
|
|
void InputSelection( EditView* pView );
|
|
|
|
void InputChanged( EditView* pView );
|
2002-10-24 11:17:42 -05:00
|
|
|
ScInputHandler* GetInputHdl( ScTabViewShell* pViewSh = NULL, BOOL bUseRef = TRUE );
|
2000-09-18 11:07:07 -05:00
|
|
|
|
|
|
|
void SetRefInputHdl( ScInputHandler* pNew );
|
|
|
|
ScInputHandler* GetRefInputHdl();
|
|
|
|
|
|
|
|
void ViewShellGone(ScTabViewShell* pViewSh);
|
|
|
|
void ViewShellChanged();
|
|
|
|
// Kommunikation mit Funktionsautopilot
|
|
|
|
void InputGetSelection( xub_StrLen& rStart, xub_StrLen& rEnd );
|
|
|
|
void InputSetSelection( xub_StrLen nStart, xub_StrLen nEnd );
|
|
|
|
void InputReplaceSelection( const String& rStr );
|
|
|
|
String InputGetFormulaStr();
|
|
|
|
void ActivateInputWindow( const String* pStr = NULL,
|
|
|
|
BOOL bMatrix = FALSE );
|
|
|
|
|
|
|
|
void InitFormEditData();
|
|
|
|
void ClearFormEditData();
|
|
|
|
ScFormEditData* GetFormEditData() { return pFormEditData; }
|
|
|
|
|
|
|
|
// Referenzeingabe:
|
2009-11-16 06:48:33 -06:00
|
|
|
//<!--Added by PengYunQuan for Validity Cell Range Picker
|
|
|
|
//void SetRefDialog( USHORT nId, BOOL bVis, SfxViewFrame* pViewFrm = NULL );
|
|
|
|
SC_DLLPUBLIC void SetRefDialog( USHORT nId, BOOL bVis, SfxViewFrame* pViewFrm = NULL );
|
|
|
|
//-->Added by PengYunQuan for Validity Cell Range Picker
|
2000-09-18 11:07:07 -05:00
|
|
|
BOOL IsModalMode(SfxObjectShell* pDocSh = NULL);
|
|
|
|
BOOL IsFormulaMode();
|
|
|
|
BOOL IsRefDialogOpen();
|
|
|
|
BOOL IsTableLocked();
|
|
|
|
void SetReference( const ScRange& rRef, ScDocument* pDoc,
|
|
|
|
const ScMarkData* pMarkData = NULL );
|
|
|
|
void AddRefEntry();
|
|
|
|
void EndReference();
|
|
|
|
USHORT GetCurRefDlgId() const { return nCurRefDlgId; }
|
|
|
|
|
|
|
|
//virtuelle Methoden fuer den Optionendialog
|
|
|
|
virtual SfxItemSet* CreateItemSet( USHORT nId );
|
|
|
|
virtual void ApplyItemSet( USHORT nId, const SfxItemSet& rSet );
|
|
|
|
virtual SfxTabPage* CreateTabPage( USHORT nId, Window* pParent, const SfxItemSet& rSet );
|
2008-03-07 05:15:47 -06:00
|
|
|
|
|
|
|
void SetInSharedDocLoading( bool bNew ) { mbIsInSharedDocLoading = bNew; }
|
|
|
|
bool IsInSharedDocLoading() const { return mbIsInSharedDocLoading; }
|
|
|
|
void SetInSharedDocSaving( bool bNew ) { mbIsInSharedDocSaving = bNew; }
|
|
|
|
bool IsInSharedDocSaving() const { return mbIsInSharedDocSaving; }
|
2009-11-16 06:48:33 -06:00
|
|
|
|
|
|
|
SC_DLLPUBLIC BOOL RegisterRefWindow( USHORT nSlotId, Window *pWnd );
|
|
|
|
SC_DLLPUBLIC BOOL UnregisterRefWindow( USHORT nSlotId, Window *pWnd );
|
|
|
|
SC_DLLPUBLIC BOOL IsAliveRefDlg( USHORT nSlotId, Window *pWnd );
|
|
|
|
SC_DLLPUBLIC Window * Find1RefWindow( USHORT nSlotId, Window *pWndAncestor );
|
|
|
|
SC_DLLPUBLIC Window * Find1RefWindow( Window *pWndAncestor );
|
2000-09-18 11:07:07 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
#define SC_MOD() ( *(ScModule**) GetAppData(SHL_CALC) )
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
2010-10-27 06:43:08 -05:00
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|