LCOV - code coverage report
Current view: top level - sc/source/ui/namedlg - namedefdlg.cxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 0 188 0.0 %
Date: 2012-08-25 Functions: 0 23 0.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 0 426 0.0 %

           Branch data     Line data    Source code
       1                 :            : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2                 :            : /*
       3                 :            :  * Version: MPL 1.1 / GPLv3+ / LGPLv3+
       4                 :            :  *
       5                 :            :  * The contents of this file are subject to the Mozilla Public License Version
       6                 :            :  * 1.1 (the "License"); you may not use this file except in compliance with
       7                 :            :  * the License or as specified alternatively below. You may obtain a copy of
       8                 :            :  * the License at http://www.mozilla.org/MPL/
       9                 :            :  *
      10                 :            :  * Software distributed under the License is distributed on an "AS IS" basis,
      11                 :            :  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
      12                 :            :  * for the specific language governing rights and limitations under the
      13                 :            :  * License.
      14                 :            :  *
      15                 :            :  * Major Contributor(s):
      16                 :            :  *  Copyright (C) 2011 Markus Mohrhard <markus.mohrhard@googlemail.com> (initial developer) ]
      17                 :            :  *
      18                 :            :  * All Rights Reserved.
      19                 :            :  *
      20                 :            :  * For minor contributions see the git repository.
      21                 :            :  *
      22                 :            :  * Alternatively, the contents of this file may be used under the terms of
      23                 :            :  * either the GNU General Public License Version 3 or later (the "GPLv3+"), or
      24                 :            :  * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
      25                 :            :  * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
      26                 :            :  * instead of those above.
      27                 :            :  */
      28                 :            : 
      29                 :            : #include "namedefdlg.hxx"
      30                 :            : 
      31                 :            : #include <vcl/msgbox.hxx>
      32                 :            : #include <sfx2/app.hxx>
      33                 :            : 
      34                 :            : #include "document.hxx"
      35                 :            : #include "globstr.hrc"
      36                 :            : #include "globalnames.hxx"
      37                 :            : #include "rangenam.hxx"
      38                 :            : #include "reffact.hxx"
      39                 :            : #include "undorangename.hxx"
      40                 :            : #include "tabvwsh.hxx"
      41                 :            : 
      42                 :            : // defines -------------------------------------------------------------------
      43                 :            : 
      44                 :            : #define ABS_SREF          SCA_VALID \
      45                 :            :     | SCA_COL_ABSOLUTE | SCA_ROW_ABSOLUTE | SCA_TAB_ABSOLUTE
      46                 :            : #define ABS_DREF          ABS_SREF \
      47                 :            :     | SCA_COL2_ABSOLUTE | SCA_ROW2_ABSOLUTE | SCA_TAB2_ABSOLUTE
      48                 :            : #define ABS_SREF3D      ABS_SREF | SCA_TAB_3D
      49                 :            : #define ABS_DREF3D      ABS_DREF | SCA_TAB_3D
      50                 :            : 
      51                 :          0 : ScNameDefDlg::ScNameDefDlg( SfxBindings* pB, SfxChildWindow* pCW, Window* pParent,
      52                 :            :         ScViewData* pViewData, std::map<rtl::OUString, ScRangeName*> aRangeMap,
      53                 :            :         const ScAddress& aCursorPos, const bool bUndo ) :
      54                 :            :     ScAnyRefDlg( pB, pCW, pParent, RID_SCDLG_NAMES_DEFINE ),
      55                 :            :     maEdName( this, ScResId( ED_NAME ) ),
      56                 :            :     maEdRange( this, this, ScResId( ED_RANGE ) ),
      57                 :            :     maRbRange( this, ScResId( RB_RANGE ), &maEdRange, this ),
      58                 :            :     maLbScope( this, ScResId( LB_SCOPE ) ),
      59                 :            :     maBtnMore( this, ScResId( BTN_MORE ) ),
      60                 :            :     maBtnRowHeader( this, ScResId( BTN_ROWHEADER ) ),
      61                 :            :     maBtnColHeader( this, ScResId( BTN_COLHEADER ) ),
      62                 :            :     maBtnPrintArea( this, ScResId( BTN_PRINTAREA ) ),
      63                 :            :     maBtnCriteria( this, ScResId( BTN_CRITERIA ) ),
      64                 :            :     maBtnAdd( this, ScResId( BTN_ADD ) ),
      65                 :            :     maBtnCancel( this, ScResId( BTN_CANCEL ) ),
      66                 :            :     maFtInfo( this, ScResId( FT_INFO ) ),
      67                 :            :     maFtName( this, ScResId( FT_NAME ) ),
      68                 :            :     maFtRange( this, ScResId( FT_RANGE ) ),
      69                 :            :     maFtScope( this, ScResId( FT_SCOPE ) ),
      70                 :            :     maFlDiv( this, ScResId( FL_DIV ) ),
      71                 :            :     mbUndo( bUndo ),
      72         [ #  # ]:          0 :     mpDoc( pViewData->GetDocument() ),
      73                 :          0 :     mpDocShell ( pViewData->GetDocShell() ),
      74                 :            :     maCursorPos( aCursorPos ),
      75                 :            : 
      76         [ #  # ]:          0 :     maGlobalNameStr  ( ScGlobal::GetRscString(STR_GLOBAL_SCOPE) ),
      77         [ #  # ]:          0 :     maErrInvalidNameStr( ScGlobal::GetRscString(STR_ERR_NAME_INVALID)),
      78         [ #  # ]:          0 :     maErrNameInUse   ( ScGlobal::GetRscString(STR_ERR_NAME_EXISTS)),
      79                 :            :     maStrInfoDefault ( SC_RESSTR(STR_DEFAULT_INFO)),
      80 [ #  # ][ #  # ]:          0 :     maRangeMap( aRangeMap )
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
         [ #  # ][ #  # ]
                 [ #  # ]
      81                 :            : {
      82                 :            :     // Initialize scope list.
      83 [ #  # ][ #  # ]:          0 :     maLbScope.InsertEntry(maGlobalNameStr);
                 [ #  # ]
      84         [ #  # ]:          0 :     maLbScope.SelectEntryPos(0);
      85         [ #  # ]:          0 :     SCTAB n = mpDoc->GetTableCount();
      86         [ #  # ]:          0 :     for (SCTAB i = 0; i < n; ++i)
      87                 :            :     {
      88                 :          0 :         rtl::OUString aTabName;
      89         [ #  # ]:          0 :         mpDoc->GetName(i, aTabName);
      90 [ #  # ][ #  # ]:          0 :         maLbScope.InsertEntry(aTabName);
                 [ #  # ]
      91                 :          0 :     }
      92                 :            : 
      93         [ #  # ]:          0 :     maBtnCancel.SetClickHdl( LINK( this, ScNameDefDlg, CancelBtnHdl));
      94         [ #  # ]:          0 :     maBtnAdd.SetClickHdl( LINK( this, ScNameDefDlg, AddBtnHdl ));
      95         [ #  # ]:          0 :     maBtnMore.SetClickHdl( LINK( this, ScNameDefDlg, MoreBtnHdl ));
      96         [ #  # ]:          0 :     maEdName.SetModifyHdl( LINK( this, ScNameDefDlg, NameModifyHdl ));
      97         [ #  # ]:          0 :     maEdRange.SetGetFocusHdl( LINK( this, ScNameDefDlg, AssignGetFocusHdl ) );
      98                 :            : 
      99         [ #  # ]:          0 :     maFtInfo.SetStyle(WB_VCENTER);
     100 [ #  # ][ #  # ]:          0 :     maFtInfo.SetText(maStrInfoDefault);
                 [ #  # ]
     101                 :            : 
     102         [ #  # ]:          0 :     maBtnAdd.Disable(); // empty name is invalid
     103                 :            : 
     104         [ #  # ]:          0 :     maBtnRowHeader.Hide();
     105         [ #  # ]:          0 :     maBtnColHeader.Hide();
     106         [ #  # ]:          0 :     maBtnCriteria.Hide();
     107         [ #  # ]:          0 :     maBtnPrintArea.Hide();
     108                 :            : 
     109         [ #  # ]:          0 :     FreeResource();
     110                 :            : 
     111         [ #  # ]:          0 :     String aAreaStr;
     112                 :          0 :     ScRange aRange;
     113                 :            : 
     114         [ #  # ]:          0 :     pViewData->GetSimpleArea( aRange );
     115                 :            :     aRange.Format( aAreaStr, ABS_DREF3D, mpDoc,
     116 [ #  # ][ #  # ]:          0 :             ScAddress::Details(mpDoc->GetAddressConvention(), 0, 0) );
     117                 :            : 
     118         [ #  # ]:          0 :     maEdRange.SetText( aAreaStr );
     119                 :            : 
     120                 :          0 :     Selection aCurSel = Selection( 0, SELECTION_MAX );
     121         [ #  # ]:          0 :     maEdName.GrabFocus();
     122 [ #  # ][ #  # ]:          0 :     maEdName.SetSelection( aCurSel );
     123                 :          0 : }
     124                 :            : 
     125                 :          0 : void ScNameDefDlg::CancelPushed()
     126                 :            : {
     127         [ #  # ]:          0 :     if (mbUndo)
     128                 :          0 :         Close();
     129                 :            :     else
     130                 :            :     {
     131                 :          0 :         ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell();
     132                 :          0 :         pViewSh->SwitchBetweenRefDialogs(this);
     133                 :            :     }
     134                 :          0 : }
     135                 :            : 
     136                 :          0 : bool ScNameDefDlg::IsFormulaValid()
     137                 :            : {
     138         [ #  # ]:          0 :     ScCompiler aComp( mpDoc, maCursorPos);
     139 [ #  # ][ #  # ]:          0 :     aComp.SetGrammar( mpDoc->GetGrammar() );
     140 [ #  # ][ #  # ]:          0 :     ScTokenArray* pCode = aComp.CompileString(maEdRange.GetText());
                 [ #  # ]
     141         [ #  # ]:          0 :     if (pCode->GetCodeError())
     142                 :            :     {
     143                 :            :         //TODO: info message
     144 [ #  # ][ #  # ]:          0 :         delete pCode;
     145                 :          0 :         return false;
     146                 :            :     }
     147                 :            :     else
     148                 :            :     {
     149 [ #  # ][ #  # ]:          0 :         delete pCode;
     150                 :          0 :         return true;
     151         [ #  # ]:          0 :     }
     152                 :            : }
     153                 :            : 
     154                 :          0 : bool ScNameDefDlg::IsNameValid()
     155                 :            : {
     156 [ #  # ][ #  # ]:          0 :     rtl::OUString aScope = maLbScope.GetSelectEntry();
                 [ #  # ]
     157 [ #  # ][ #  # ]:          0 :     rtl::OUString aName = maEdName.GetText();
                 [ #  # ]
     158                 :            : 
     159                 :          0 :     ScRangeName* pRangeName = NULL;
     160         [ #  # ]:          0 :     if(aScope == maGlobalNameStr)
     161                 :            :     {
     162 [ #  # ][ #  # ]:          0 :         pRangeName = maRangeMap.find(rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STR_GLOBAL_RANGE_NAME)))->second;
     163                 :            :     }
     164                 :            :     else
     165                 :            :     {
     166         [ #  # ]:          0 :         pRangeName = maRangeMap.find(aScope)->second;
     167                 :            :     }
     168                 :            : 
     169         [ #  # ]:          0 :     maFtInfo.SetControlBackground(GetSettings().GetStyleSettings().GetDialogColor());
     170         [ #  # ]:          0 :     if ( aName.isEmpty() )
     171                 :            :     {
     172         [ #  # ]:          0 :         maBtnAdd.Disable();
     173 [ #  # ][ #  # ]:          0 :         maFtInfo.SetText(maStrInfoDefault);
                 [ #  # ]
     174                 :          0 :         return false;
     175                 :            :     }
     176 [ #  # ][ #  # ]:          0 :     else if (!ScRangeData::IsNameValid( aName, mpDoc ))
         [ #  # ][ #  # ]
     177                 :            :     {
     178         [ #  # ]:          0 :         maFtInfo.SetControlBackground(GetSettings().GetStyleSettings().GetHighlightColor());
     179 [ #  # ][ #  # ]:          0 :         maFtInfo.SetText(maErrInvalidNameStr);
                 [ #  # ]
     180         [ #  # ]:          0 :         maBtnAdd.Disable();
     181                 :          0 :         return false;
     182                 :            :     }
     183 [ #  # ][ #  # ]:          0 :     else if (pRangeName->findByUpperName(ScGlobal::pCharClass->uppercase(aName)))
                 [ #  # ]
     184                 :            :     {
     185         [ #  # ]:          0 :         maFtInfo.SetControlBackground(GetSettings().GetStyleSettings().GetHighlightColor());
     186 [ #  # ][ #  # ]:          0 :         maFtInfo.SetText(maErrNameInUse);
                 [ #  # ]
     187         [ #  # ]:          0 :         maBtnAdd.Disable();
     188                 :          0 :         return false;
     189                 :            :     }
     190                 :            : 
     191 [ #  # ][ #  # ]:          0 :     if (!IsFormulaValid())
     192                 :            :     {
     193         [ #  # ]:          0 :         maFtInfo.SetControlBackground(GetSettings().GetStyleSettings().GetHighlightColor());
     194         [ #  # ]:          0 :         maBtnAdd.Disable();
     195                 :          0 :         return false;
     196                 :            :     }
     197                 :            : 
     198 [ #  # ][ #  # ]:          0 :     maFtInfo.SetText(maStrInfoDefault);
                 [ #  # ]
     199         [ #  # ]:          0 :     maBtnAdd.Enable();
     200                 :          0 :     return true;
     201                 :            : }
     202                 :            : 
     203                 :          0 : void ScNameDefDlg::AddPushed()
     204                 :            : {
     205 [ #  # ][ #  # ]:          0 :     rtl::OUString aScope = maLbScope.GetSelectEntry();
                 [ #  # ]
     206 [ #  # ][ #  # ]:          0 :     rtl::OUString aName = maEdName.GetText();
                 [ #  # ]
     207 [ #  # ][ #  # ]:          0 :     rtl::OUString aExpression = maEdRange.GetText();
                 [ #  # ]
     208                 :            : 
     209         [ #  # ]:          0 :     if (aName.isEmpty())
     210                 :            :     {
     211                 :            :         return;
     212                 :            :     }
     213         [ #  # ]:          0 :     if (aScope.isEmpty())
     214                 :            :     {
     215                 :            :         return;
     216                 :            :     }
     217                 :            : 
     218                 :          0 :     ScRangeName* pRangeName = NULL;
     219         [ #  # ]:          0 :     if(aScope == maGlobalNameStr)
     220                 :            :     {
     221 [ #  # ][ #  # ]:          0 :         pRangeName = maRangeMap.find(rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(STR_GLOBAL_RANGE_NAME)))->second;
     222                 :            :     }
     223                 :            :     else
     224                 :            :     {
     225         [ #  # ]:          0 :         pRangeName = maRangeMap.find(aScope)->second;
     226                 :            :     }
     227         [ #  # ]:          0 :     if (!pRangeName)
     228                 :            :         return;
     229                 :            : 
     230 [ #  # ][ #  # ]:          0 :     if (!IsNameValid()) //should not happen, but make sure we don't break anything
     231                 :            :         return;
     232                 :            :     else
     233                 :            :     {
     234         [ #  # ]:          0 :         if ( mpDoc )
     235                 :            :         {
     236                 :          0 :             ScRangeData*    pNewEntry   = NULL;
     237                 :          0 :             RangeType       nType       = RT_NAME;
     238                 :            : 
     239                 :            :             pNewEntry = new ScRangeData( mpDoc,
     240                 :            :                     aName,
     241                 :            :                     aExpression,
     242                 :            :                     maCursorPos,
     243 [ #  # ][ #  # ]:          0 :                     nType );
         [ #  # ][ #  # ]
     244         [ #  # ]:          0 :             if (pNewEntry)
     245                 :            :             {
     246                 :            :                 nType = nType
     247         [ #  # ]:          0 :                     | (maBtnRowHeader .IsChecked() ? RT_ROWHEADER  : RangeType(0))
     248         [ #  # ]:          0 :                     | (maBtnColHeader .IsChecked() ? RT_COLHEADER  : RangeType(0))
     249         [ #  # ]:          0 :                     | (maBtnPrintArea .IsChecked() ? RT_PRINTAREA  : RangeType(0))
     250 [ #  # ][ #  # ]:          0 :                     | (maBtnCriteria  .IsChecked() ? RT_CRITERIA   : RangeType(0));
         [ #  # ][ #  # ]
                 [ #  # ]
     251                 :          0 :                 pNewEntry->AddType(nType);
     252                 :            :             }
     253                 :            : 
     254                 :            :             // aExpression valid?
     255 [ #  # ][ #  # ]:          0 :             if ( 0 == pNewEntry->GetErrCode() )
     256                 :            :             {
     257 [ #  # ][ #  # ]:          0 :                 if ( !pRangeName->insert( pNewEntry ) )
     258                 :          0 :                     pNewEntry = NULL;
     259                 :            : 
     260         [ #  # ]:          0 :                 if (mbUndo)
     261                 :            :                 {
     262                 :            :                     // this means we called directly through the menu
     263                 :            : 
     264                 :            :                     SCTAB nTab;
     265                 :            :                     // if no table with that name is found, assume global range name
     266 [ #  # ][ #  # ]:          0 :                     if (!mpDoc->GetTable(aScope, nTab))
     267                 :          0 :                         nTab = -1;
     268                 :            : 
     269         [ #  # ]:          0 :                     mpDocShell->GetUndoManager()->AddUndoAction(
     270 [ #  # ][ #  # ]:          0 :                             new ScUndoAddRangeData( mpDocShell, pNewEntry, nTab) );
                 [ #  # ]
     271                 :            : 
     272                 :            :                     // set table stream invalid, otherwise RangeName won't be saved if no other
     273                 :            :                     // call invalidates the stream
     274         [ #  # ]:          0 :                     if (nTab != -1)
     275         [ #  # ]:          0 :                         mpDoc->SetStreamValid(nTab, false);
     276 [ #  # ][ #  # ]:          0 :                     SFX_APP()->Broadcast( SfxSimpleHint( SC_HINT_AREAS_CHANGED ) );
         [ #  # ][ #  # ]
     277         [ #  # ]:          0 :                     Close();
     278                 :            :                 }
     279                 :            :                 else
     280                 :            :                 {
     281                 :          0 :                     maName = aName;
     282                 :          0 :                     maScope = aScope;
     283         [ #  # ]:          0 :                     ScTabViewShell* pViewSh = ScTabViewShell::GetActiveViewShell();
     284         [ #  # ]:          0 :                     pViewSh->SwitchBetweenRefDialogs(this);
     285                 :            :                 }
     286                 :            :             }
     287                 :            :             else
     288                 :            :             {
     289 [ #  # ][ #  # ]:          0 :                 delete pNewEntry;
     290                 :          0 :                 Selection aCurSel = Selection( 0, SELECTION_MAX );
     291         [ #  # ]:          0 :                 maEdRange.GrabFocus();
     292         [ #  # ]:          0 :                 maEdRange.SetSelection( aCurSel );
     293                 :            :             }
     294                 :            :         }
     295 [ #  # ][ #  # ]:          0 :     }
                 [ #  # ]
     296                 :            : }
     297                 :            : 
     298                 :          0 : void ScNameDefDlg::GetNewData(rtl::OUString& rName, rtl::OUString& rScope)
     299                 :            : {
     300                 :          0 :     rName = maName;
     301                 :          0 :     rScope = maScope;
     302                 :          0 : }
     303                 :            : 
     304                 :          0 : sal_Bool ScNameDefDlg::IsRefInputMode() const
     305                 :            : {
     306                 :          0 :     return maEdRange.IsEnabled();
     307                 :            : }
     308                 :            : 
     309                 :          0 : void ScNameDefDlg::RefInputDone( sal_Bool bForced)
     310                 :            : {
     311                 :          0 :     ScAnyRefDlg::RefInputDone(bForced);
     312                 :          0 :     IsNameValid();
     313                 :          0 : }
     314                 :            : 
     315                 :          0 : void ScNameDefDlg::SetReference( const ScRange& rRef, ScDocument* pDocP )
     316                 :            : {
     317         [ #  # ]:          0 :     if ( maEdRange.IsEnabled() )
     318                 :            :     {
     319         [ #  # ]:          0 :         if ( rRef.aStart != rRef.aEnd )
     320         [ #  # ]:          0 :             RefInputStart(&maEdRange);
     321         [ #  # ]:          0 :         String aRefStr;
     322                 :            :         rRef.Format( aRefStr, ABS_DREF3D, pDocP,
     323 [ #  # ][ #  # ]:          0 :                 ScAddress::Details(pDocP->GetAddressConvention(), 0, 0) );
     324 [ #  # ][ #  # ]:          0 :         maEdRange.SetRefString( aRefStr );
     325                 :            :     }
     326                 :          0 : }
     327                 :            : 
     328                 :          0 : sal_Bool ScNameDefDlg::Close()
     329                 :            : {
     330                 :          0 :     return DoClose( ScNameDefDlgWrapper::GetChildWindowId() );
     331                 :            : }
     332                 :            : 
     333                 :          0 : void ScNameDefDlg::SetActive()
     334                 :            : {
     335                 :          0 :     maEdRange.GrabFocus();
     336                 :          0 :     RefInputDone();
     337                 :          0 : }
     338                 :            : 
     339                 :            : namespace {
     340                 :            : 
     341                 :          0 : void MoveWindow( Window& rButton, long nPixel)
     342                 :            : {
     343         [ #  # ]:          0 :     Point aPoint = rButton.GetPosPixel();
     344                 :          0 :     aPoint.Y() += nPixel;
     345         [ #  # ]:          0 :     rButton.SetPosPixel(aPoint);
     346                 :          0 : }
     347                 :            : 
     348                 :            : }
     349                 :            : 
     350                 :          0 : void ScNameDefDlg::MorePushed()
     351                 :            : {
     352         [ #  # ]:          0 :     Size nSize = GetSizePixel();
     353                 :            : 
     354                 :            :     //depending on the state of the button, move all elements below up/down
     355                 :          0 :     long nPixel = 65;
     356         [ #  # ]:          0 :     if (!maBtnMore.GetState())
     357                 :            :     {
     358                 :          0 :         nPixel *= -1;
     359         [ #  # ]:          0 :         maBtnRowHeader.Hide();
     360         [ #  # ]:          0 :         maBtnColHeader.Hide();
     361         [ #  # ]:          0 :         maBtnPrintArea.Hide();
     362         [ #  # ]:          0 :         maBtnCriteria.Hide();
     363                 :            :     }
     364                 :            :     else
     365                 :            :     {
     366         [ #  # ]:          0 :         maBtnRowHeader.Show();
     367         [ #  # ]:          0 :         maBtnColHeader.Show();
     368         [ #  # ]:          0 :         maBtnPrintArea.Show();
     369         [ #  # ]:          0 :         maBtnCriteria.Show();
     370                 :            :     }
     371                 :          0 :     nSize.Height() += nPixel;
     372         [ #  # ]:          0 :     SetSizePixel(nSize);
     373         [ #  # ]:          0 :     MoveWindow(maBtnAdd, nPixel);
     374         [ #  # ]:          0 :     MoveWindow(maBtnCancel, nPixel);
     375         [ #  # ]:          0 :     MoveWindow(maFlDiv, nPixel);
     376                 :          0 : }
     377                 :            : 
     378                 :          0 : IMPL_LINK_NOARG(ScNameDefDlg, CancelBtnHdl)
     379                 :            : {
     380                 :          0 :     CancelPushed();
     381                 :          0 :     return 0;
     382                 :            : }
     383                 :            : 
     384                 :          0 : IMPL_LINK_NOARG(ScNameDefDlg, AddBtnHdl)
     385                 :            : {
     386                 :          0 :     AddPushed();
     387                 :          0 :     return 0;
     388                 :            : };
     389                 :            : 
     390                 :          0 : IMPL_LINK_NOARG(ScNameDefDlg, NameModifyHdl)
     391                 :            : {
     392                 :          0 :     IsNameValid();
     393                 :          0 :     return 0;
     394                 :            : }
     395                 :            : 
     396                 :          0 : IMPL_LINK_NOARG(ScNameDefDlg, AssignGetFocusHdl)
     397                 :            : {
     398                 :          0 :     IsNameValid();
     399                 :          0 :     return 0;
     400                 :            : }
     401                 :            : 
     402                 :          0 : IMPL_LINK_NOARG(ScNameDefDlg, MoreBtnHdl)
     403                 :            : {
     404                 :          0 :     MorePushed();
     405                 :          0 :     return 0;
     406                 :            : }
     407                 :            : 
     408                 :            : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10