2010-10-27 12:43:08 +01:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2012-11-30 12:23:25 +00:00
|
|
|
/*
|
|
|
|
* This file is part of the LibreOffice project.
|
2000-09-18 16:07:07 +00:00
|
|
|
*
|
2012-11-30 12:23:25 +00:00
|
|
|
* 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/.
|
2000-09-18 16:07:07 +00:00
|
|
|
*
|
2012-11-30 12:23:25 +00:00
|
|
|
* This file incorporates work covered by the following license notice:
|
2000-09-18 16:07:07 +00:00
|
|
|
*
|
2012-11-30 12:23:25 +00:00
|
|
|
* 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 .
|
|
|
|
*/
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
#ifndef SC_SCMOD_HXX
|
|
|
|
#define SC_SCMOD_HXX
|
|
|
|
|
2004-08-23 08:26:06 +00:00
|
|
|
#include "scdllapi.h"
|
2000-09-18 16:07:07 +00:00
|
|
|
#include "scdll.hxx"
|
|
|
|
#include <vcl/timer.hxx>
|
2009-10-16 00:05:16 +02:00
|
|
|
#include <svl/lstner.hxx>
|
2000-09-18 16:07:07 +00:00
|
|
|
#include "global.hxx" // ScInputMode
|
|
|
|
#include "shellids.hxx"
|
2009-10-16 00:05:16 +02:00
|
|
|
#include <unotools/options.hxx>
|
2004-10-04 19:04:03 +00:00
|
|
|
#include <tools/shl.hxx>
|
|
|
|
|
2009-11-16 13:48:33 +01:00
|
|
|
#include <map>
|
|
|
|
#include <list>
|
|
|
|
#include <algorithm>
|
2012-12-02 20:33:12 +01:00
|
|
|
#include <stack>
|
2009-11-16 13:48:33 +01:00
|
|
|
|
2004-10-04 19:04:03 +00:00
|
|
|
|
2000-09-18 16:07:07 +00:00
|
|
|
class KeyEvent;
|
|
|
|
class EditView;
|
|
|
|
class SfxErrorHandler;
|
2002-04-24 12:35:43 +00:00
|
|
|
class SvtAccessibilityOptions;
|
2003-05-27 14:07:24 +00:00
|
|
|
class SvtCTLOptions;
|
2004-04-29 15:33:52 +00:00
|
|
|
class SvtUserOptions;
|
2002-04-24 12:35:43 +00:00
|
|
|
|
2003-03-26 17:07:02 +00:00
|
|
|
namespace svtools { class ColorConfig; }
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
class ScRange;
|
|
|
|
class ScDocument;
|
|
|
|
class ScViewCfg;
|
|
|
|
class ScDocCfg;
|
|
|
|
class ScAppCfg;
|
2012-04-12 21:20:58 +02:00
|
|
|
class ScDefaultsCfg;
|
2012-04-10 00:09:40 +02:00
|
|
|
class ScFormulaCfg;
|
2000-09-18 16:07:07 +00:00
|
|
|
class ScInputCfg;
|
2001-05-29 18:46:58 +00:00
|
|
|
class ScPrintCfg;
|
2000-09-18 16:07:07 +00:00
|
|
|
class ScViewOptions;
|
|
|
|
class ScDocOptions;
|
|
|
|
class ScAppOptions;
|
2012-04-12 21:20:58 +02:00
|
|
|
class ScDefaultsOptions;
|
2012-04-10 00:09:40 +02:00
|
|
|
class ScFormulaOptions;
|
2000-09-18 16:07:07 +00:00
|
|
|
class ScInputOptions;
|
2001-05-29 18:46:58 +00:00
|
|
|
class ScPrintOptions;
|
2000-09-18 16:07:07 +00:00
|
|
|
class ScInputHandler;
|
|
|
|
class ScTabViewShell;
|
|
|
|
class ScMessagePool;
|
|
|
|
class EditFieldInfo;
|
|
|
|
class ScNavipiCfg;
|
2006-08-04 11:11:26 +00:00
|
|
|
class ScAddInCfg;
|
2001-02-14 18:12:19 +00:00
|
|
|
class ScTransferObj;
|
|
|
|
class ScDrawTransferObj;
|
2001-10-02 17:32:43 +00:00
|
|
|
class ScSelectionTransferObj;
|
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 10:47:13 +00:00
|
|
|
class ScFormEditData;
|
2011-11-23 21:32:01 -05:00
|
|
|
class ScMarkData;
|
2011-10-18 17:54:35 +03:00
|
|
|
struct ScDragData;
|
|
|
|
struct ScClipData;
|
2012-12-02 20:33:12 +01:00
|
|
|
class ScAnyRefModalDlg;
|
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 10:47:13 +00:00
|
|
|
|
2000-09-18 16:07:07 +00:00
|
|
|
//==================================================================
|
|
|
|
|
|
|
|
// for internal Drag&Drop:
|
|
|
|
|
|
|
|
#define SC_DROP_NAVIGATOR 1
|
|
|
|
#define SC_DROP_TABLE 2
|
|
|
|
|
|
|
|
//==================================================================
|
|
|
|
|
2009-10-16 00:05:16 +02:00
|
|
|
class ScModule: public SfxModule, public SfxListener, utl::ConfigurationListener
|
2000-09-18 16:07:07 +00:00
|
|
|
{
|
|
|
|
Timer aIdleTimer;
|
|
|
|
Timer aSpellTimer;
|
2011-08-29 20:40:42 -04:00
|
|
|
ScDragData* mpDragData;
|
|
|
|
ScClipData* mpClipData;
|
2001-10-02 17:32:43 +00:00
|
|
|
ScSelectionTransferObj* pSelTransfer;
|
2000-09-18 16:07:07 +00:00
|
|
|
ScMessagePool* pMessagePool;
|
2011-02-11 20:58:35 +01:00
|
|
|
// there is no global InputHandler anymore, each View has it's own
|
2000-09-18 16:07:07 +00:00
|
|
|
ScInputHandler* pRefInputHandler;
|
|
|
|
ScViewCfg* pViewCfg;
|
|
|
|
ScDocCfg* pDocCfg;
|
|
|
|
ScAppCfg* pAppCfg;
|
2012-04-12 21:20:58 +02:00
|
|
|
ScDefaultsCfg* pDefaultsCfg;
|
2012-04-10 00:09:40 +02:00
|
|
|
ScFormulaCfg* pFormulaCfg;
|
2000-09-18 16:07:07 +00:00
|
|
|
ScInputCfg* pInputCfg;
|
2001-05-29 18:46:58 +00:00
|
|
|
ScPrintCfg* pPrintCfg;
|
2000-09-18 16:07:07 +00:00
|
|
|
ScNavipiCfg* pNavipiCfg;
|
2006-08-04 11:11:26 +00:00
|
|
|
ScAddInCfg* pAddInCfg;
|
2003-03-26 17:07:02 +00:00
|
|
|
svtools::ColorConfig* pColorConfig;
|
2002-04-24 12:35:43 +00:00
|
|
|
SvtAccessibilityOptions* pAccessOptions;
|
2003-05-27 14:07:24 +00:00
|
|
|
SvtCTLOptions* pCTLOptions;
|
2004-04-29 15:33:52 +00:00
|
|
|
SvtUserOptions* pUserOptions;
|
2000-09-18 16:07:07 +00:00
|
|
|
SfxErrorHandler* pErrorHdl;
|
|
|
|
ScFormEditData* pFormEditData;
|
2011-01-17 13:20:22 +01:00
|
|
|
sal_uInt16 nCurRefDlgId;
|
2011-08-29 20:40:42 -04:00
|
|
|
bool bIsWaterCan:1;
|
|
|
|
bool bIsInEditCommand:1;
|
|
|
|
bool bIsInExecuteDrop:1;
|
|
|
|
bool mbIsInSharedDocLoading:1;
|
|
|
|
bool mbIsInSharedDocSaving:1;
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2011-01-17 13:20:22 +01:00
|
|
|
std::map<sal_uInt16, std::list<Window*> > m_mapRefWindow;
|
2012-12-02 20:33:12 +01:00
|
|
|
std::stack<ScAnyRefModalDlg*> maAnyRefDlgStack;
|
2000-09-18 16:07:07 +00:00
|
|
|
public:
|
2007-02-27 10:57:59 +00:00
|
|
|
SFX_DECL_INTERFACE(SCID_APP)
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
ScModule( SfxObjectFactory* pFact );
|
|
|
|
virtual ~ScModule();
|
|
|
|
|
|
|
|
virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint );
|
2009-10-16 00:05:16 +02:00
|
|
|
virtual void ConfigurationChanged( utl::ConfigurationBroadcaster*, sal_uInt32 );
|
2000-09-18 16:07:07 +00:00
|
|
|
void DeleteCfg();
|
|
|
|
|
2011-02-11 20:58:35 +01:00
|
|
|
// moved by the application
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2012-03-01 18:00:32 +01:00
|
|
|
DECL_LINK( IdleHandler, void* ); // Timer instead of idle
|
|
|
|
DECL_LINK( SpellTimerHdl, void* );
|
2000-09-18 16:07:07 +00:00
|
|
|
DECL_LINK( CalcFieldValueHdl, EditFieldInfo* );
|
|
|
|
|
|
|
|
void Execute( SfxRequest& rReq );
|
|
|
|
void GetState( SfxItemSet& rSet );
|
2005-11-16 09:12:22 +00:00
|
|
|
void HideDisabledSlots( SfxItemSet& rSet );
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
void AnythingChanged();
|
|
|
|
|
|
|
|
// Drag & Drop:
|
2011-08-29 20:40:42 -04:00
|
|
|
const ScDragData& GetDragData() const;
|
2001-03-23 18:26:39 +00:00
|
|
|
void SetDragObject( ScTransferObj* pCellObj, ScDrawTransferObj* pDrawObj );
|
2000-09-18 16:07:07 +00:00
|
|
|
void ResetDragObject();
|
2011-08-29 21:00:18 -04:00
|
|
|
void SetDragLink(
|
2013-04-07 12:06:47 +02:00
|
|
|
const OUString& rDoc, const OUString& rTab, const OUString& rArea );
|
2011-08-29 21:00:18 -04:00
|
|
|
void SetDragJump(
|
2013-04-07 12:06:47 +02:00
|
|
|
ScDocument* pLocalDoc, const OUString& rTarget, const OUString& rText );
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2001-02-14 18:12:19 +00:00
|
|
|
// clipboard:
|
2011-08-29 20:40:42 -04:00
|
|
|
const ScClipData& GetClipData() const;
|
2001-02-14 18:12:19 +00:00
|
|
|
void SetClipObject( ScTransferObj* pCellObj, ScDrawTransferObj* pDrawObj );
|
|
|
|
|
|
|
|
ScDocument* GetClipDoc(); // called from document - should be removed later
|
|
|
|
|
2001-10-02 17:32:43 +00:00
|
|
|
// X selection:
|
|
|
|
ScSelectionTransferObj* GetSelectionTransfer() const { return pSelTransfer; }
|
|
|
|
void SetSelectionTransfer( ScSelectionTransferObj* pNew );
|
|
|
|
|
2011-08-29 20:40:42 -04:00
|
|
|
void SetWaterCan( bool bNew ) { bIsWaterCan = bNew; }
|
|
|
|
bool GetIsWaterCan() const { return bIsWaterCan; }
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2011-08-29 20:40:42 -04:00
|
|
|
void SetInEditCommand( bool bNew ) { bIsInEditCommand = bNew; }
|
|
|
|
bool IsInEditCommand() const { return bIsInEditCommand; }
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2011-08-29 20:40:42 -04:00
|
|
|
void SetInExecuteDrop( bool bNew ) { bIsInExecuteDrop = bNew; }
|
|
|
|
bool IsInExecuteDrop() const { return bIsInExecuteDrop; }
|
2004-09-08 14:28:31 +00:00
|
|
|
|
2000-09-18 16:07:07 +00:00
|
|
|
// Options:
|
|
|
|
const ScViewOptions& GetViewOptions ();
|
2013-05-03 15:47:12 +01:00
|
|
|
SC_DLLPUBLIC const ScDocOptions& GetDocOptions ();
|
2004-08-23 08:26:06 +00:00
|
|
|
SC_DLLPUBLIC const ScAppOptions& GetAppOptions ();
|
2012-04-17 20:25:53 +02:00
|
|
|
SC_DLLPUBLIC const ScDefaultsOptions& GetDefaultsOptions ();
|
2012-12-10 11:19:38 +01:00
|
|
|
SC_DLLPUBLIC const ScFormulaOptions& GetFormulaOptions ();
|
2000-09-18 16:07:07 +00:00
|
|
|
const ScInputOptions& GetInputOptions ();
|
2004-08-23 08:26:06 +00:00
|
|
|
SC_DLLPUBLIC const ScPrintOptions& GetPrintOptions ();
|
2000-09-18 16:07:07 +00:00
|
|
|
void SetViewOptions ( const ScViewOptions& rOpt );
|
2013-05-03 15:47:12 +01:00
|
|
|
SC_DLLPUBLIC void SetDocOptions ( const ScDocOptions& rOpt );
|
2004-08-23 08:26:06 +00:00
|
|
|
SC_DLLPUBLIC void SetAppOptions ( const ScAppOptions& rOpt );
|
2012-04-12 21:20:58 +02:00
|
|
|
void SetDefaultsOptions ( const ScDefaultsOptions& rOpt );
|
2012-12-10 11:19:38 +01:00
|
|
|
SC_DLLPUBLIC void SetFormulaOptions ( const ScFormulaOptions& rOpt );
|
2000-09-18 16:07:07 +00:00
|
|
|
void SetInputOptions ( const ScInputOptions& rOpt );
|
2001-05-29 18:46:58 +00:00
|
|
|
void SetPrintOptions ( const ScPrintOptions& rOpt );
|
2011-01-17 13:20:22 +01:00
|
|
|
void InsertEntryToLRUList(sal_uInt16 nFIndex);
|
2000-09-18 16:07:07 +00:00
|
|
|
void RecentFunctionsChanged();
|
|
|
|
|
2011-01-17 13:20:22 +01:00
|
|
|
static void GetSpellSettings( sal_uInt16& rDefLang, sal_uInt16& rCjkLang, sal_uInt16& rCtlLang,
|
|
|
|
sal_Bool& rAutoSpell );
|
|
|
|
static void SetAutoSpellProperty( sal_Bool bSet );
|
|
|
|
static sal_Bool HasThesaurusLanguage( sal_uInt16 nLang );
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2011-01-17 13:20:22 +01:00
|
|
|
sal_uInt16 GetOptDigitLanguage(); // from CTL options
|
2003-05-27 14:07:24 +00:00
|
|
|
|
2000-09-18 16:07:07 +00:00
|
|
|
ScNavipiCfg& GetNavipiCfg();
|
2006-08-04 11:11:26 +00:00
|
|
|
ScAddInCfg& GetAddInCfg();
|
2003-03-26 17:07:02 +00:00
|
|
|
svtools::ColorConfig& GetColorConfig();
|
2002-04-24 12:35:43 +00:00
|
|
|
SvtAccessibilityOptions& GetAccessOptions();
|
2003-05-27 14:07:24 +00:00
|
|
|
SvtCTLOptions& GetCTLOptions();
|
2004-04-29 15:33:52 +00:00
|
|
|
SvtUserOptions& GetUserOptions();
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
void ModifyOptions( const SfxItemSet& rOptSet );
|
|
|
|
|
2011-02-11 20:58:35 +01:00
|
|
|
// InputHandler:
|
2011-03-10 16:55:21 -05:00
|
|
|
sal_Bool IsEditMode(); // not for SC_INPUT_TYPE
|
|
|
|
sal_Bool IsInputMode(); // also for SC_INPUT_TYPE
|
2000-09-18 16:07:07 +00:00
|
|
|
void SetInputMode( ScInputMode eMode );
|
2011-03-10 16:55:21 -05:00
|
|
|
sal_Bool InputKeyEvent( const KeyEvent& rKEvt, sal_Bool bStartEdit = false );
|
2011-01-17 13:20:22 +01:00
|
|
|
SC_DLLPUBLIC void InputEnterHandler( sal_uInt8 nBlockMode = 0 );
|
2000-09-18 16:07:07 +00:00
|
|
|
void InputCancelHandler();
|
|
|
|
void InputSelection( EditView* pView );
|
|
|
|
void InputChanged( EditView* pView );
|
2011-01-17 13:20:22 +01:00
|
|
|
ScInputHandler* GetInputHdl( ScTabViewShell* pViewSh = NULL, sal_Bool bUseRef = sal_True );
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
void SetRefInputHdl( ScInputHandler* pNew );
|
|
|
|
ScInputHandler* GetRefInputHdl();
|
|
|
|
|
|
|
|
void ViewShellGone(ScTabViewShell* pViewSh);
|
|
|
|
void ViewShellChanged();
|
2011-02-11 20:58:35 +01:00
|
|
|
// communication with function-autopilot
|
2000-09-18 16:07:07 +00:00
|
|
|
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,
|
2011-03-10 16:55:21 -05:00
|
|
|
sal_Bool bMatrix = false );
|
2000-09-18 16:07:07 +00:00
|
|
|
|
|
|
|
void InitFormEditData();
|
|
|
|
void ClearFormEditData();
|
|
|
|
ScFormEditData* GetFormEditData() { return pFormEditData; }
|
|
|
|
|
2011-02-11 20:58:35 +01:00
|
|
|
// input of reference:
|
2011-01-17 13:20:22 +01:00
|
|
|
SC_DLLPUBLIC void SetRefDialog( sal_uInt16 nId, sal_Bool bVis, SfxViewFrame* pViewFrm = NULL );
|
|
|
|
sal_Bool IsModalMode(SfxObjectShell* pDocSh = NULL);
|
|
|
|
sal_Bool IsFormulaMode();
|
|
|
|
sal_Bool IsRefDialogOpen();
|
|
|
|
sal_Bool IsTableLocked();
|
2000-09-18 16:07:07 +00:00
|
|
|
void SetReference( const ScRange& rRef, ScDocument* pDoc,
|
|
|
|
const ScMarkData* pMarkData = NULL );
|
|
|
|
void AddRefEntry();
|
|
|
|
void EndReference();
|
2011-01-17 13:20:22 +01:00
|
|
|
sal_uInt16 GetCurRefDlgId() const { return nCurRefDlgId; }
|
2000-09-18 16:07:07 +00:00
|
|
|
|
2011-02-11 20:58:35 +01:00
|
|
|
// virtual methods for the options dialog
|
2011-01-17 13:20:22 +01:00
|
|
|
virtual SfxItemSet* CreateItemSet( sal_uInt16 nId );
|
|
|
|
virtual void ApplyItemSet( sal_uInt16 nId, const SfxItemSet& rSet );
|
|
|
|
virtual SfxTabPage* CreateTabPage( sal_uInt16 nId, Window* pParent, const SfxItemSet& rSet );
|
2008-03-07 11:15:47 +00: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 13:48:33 +01:00
|
|
|
|
2011-01-17 13:20:22 +01:00
|
|
|
SC_DLLPUBLIC sal_Bool RegisterRefWindow( sal_uInt16 nSlotId, Window *pWnd );
|
|
|
|
SC_DLLPUBLIC sal_Bool UnregisterRefWindow( sal_uInt16 nSlotId, Window *pWnd );
|
|
|
|
SC_DLLPUBLIC sal_Bool IsAliveRefDlg( sal_uInt16 nSlotId, Window *pWnd );
|
|
|
|
SC_DLLPUBLIC Window * Find1RefWindow( sal_uInt16 nSlotId, Window *pWndAncestor );
|
2012-12-02 20:33:12 +01:00
|
|
|
|
|
|
|
ScAnyRefModalDlg* GetCurrentAnyRefDlg();
|
|
|
|
void PushNewAnyRefDlg( ScAnyRefModalDlg* pDlg );
|
|
|
|
void PopAnyRefDlg();
|
2000-09-18 16:07:07 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#define SC_MOD() ( *(ScModule**) GetAppData(SHL_CALC) )
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
2010-10-27 12:43:08 +01:00
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|