xref: /AOO41X/main/sc/source/ui/inc/tabopdlg.hxx (revision 38d50f7b14e1cf975d8c6468d9633894cd59b523)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef SC_TABOPDLG_HXX
25 #define SC_TABOPDLG_HXX
26 
27 #include <vcl/fixed.hxx>
28 #include <vcl/group.hxx>
29 #include "global.hxx"
30 #include "address.hxx"
31 #include "anyrefdg.hxx"
32 
33 
34 //------------------------------------------------------------------------
35 
36 enum ScTabOpErr
37 {
38     TABOPERR_NOFORMULA = 1,
39     TABOPERR_NOCOLROW,
40     TABOPERR_WRONGFORMULA,
41     TABOPERR_WRONGROW,
42     TABOPERR_NOCOLFORMULA,
43     TABOPERR_WRONGCOL,
44     TABOPERR_NOROWFORMULA
45 };
46 
47 //========================================================================
48 
49 class ScTabOpDlg : public ScAnyRefDlg
50 {
51 public:
52                     ScTabOpDlg( SfxBindings* pB, SfxChildWindow* pCW, Window* pParent,
53                                 ScDocument*     pDocument,
54                                 const ScRefAddress& rCursorPos );
55                     ~ScTabOpDlg();
56 
57     virtual void    SetReference( const ScRange& rRef, ScDocument* pDoc );
IsRefInputMode() const58     virtual sal_Bool    IsRefInputMode() const { return sal_True; }
59     virtual void    SetActive();
60 
61     virtual sal_Bool    Close();
62 
63 private:
64     FixedLine       aFlVariables;
65     FixedText       aFtFormulaRange;
66     formula::RefEdit        aEdFormulaRange;
67     formula::RefButton      aRBFormulaRange;
68 
69     FixedText       aFtRowCell;
70     formula::RefEdit        aEdRowCell;
71     formula::RefButton      aRBRowCell;
72 
73     FixedText       aFtColCell;
74     formula::RefEdit        aEdColCell;
75     formula::RefButton      aRBColCell;
76 
77     OKButton        aBtnOk;
78     CancelButton    aBtnCancel;
79     HelpButton      aBtnHelp;
80 
81     ScRefAddress    theFormulaCell;
82     ScRefAddress    theFormulaEnd;
83     ScRefAddress    theRowCell;
84     ScRefAddress    theColCell;
85 
86     ScDocument*     pDoc;
87     const SCTAB     nCurTab;
88     formula::RefEdit*       pEdActive;
89     sal_Bool            bDlgLostFocus;
90     const String    errMsgNoFormula;
91     const String    errMsgNoColRow;
92     const String    errMsgWrongFormula;
93     const String    errMsgWrongRowCol;
94     const String    errMsgNoColFormula;
95     const String    errMsgNoRowFormula;
96 
97 #ifdef _TABOPDLG_CXX
98     void    Init();
99     void    RaiseError( ScTabOpErr eError );
100 
101     DECL_LINK( BtnHdl, PushButton* );
102     DECL_LINK( GetFocusHdl, Control* );
103     DECL_LINK( LoseFocusHdl, Control* );
104 #endif  // _TABOPDLG_CXX
105 };
106 
107 #endif // SC_TABOPDLG_HXX
108 
109 
110 
111