• Caolán McNamara's avatar
    untangle the bFmt == 2 hack · d913a5a9
    Caolán McNamara yazdı
    Firstly, IsFormat is unused so there's no "escape" of
    bFmt back into the outside world.
    
    Then bFmt has two purposes.
    
    Purpose 1 is 'not be a format dialog, be a format dialog, be a format dialog but hide standard button'
    
    so, lets just add an explicit "Hide standard button" method and call
    it in the (apparently) one place where it's necessary.
    
    Purpose 2 is to flag that "BaseFmtHdl" was called from clicking
    the "Standard" button at which point its set to 2.
    
    SfxTabDialog::Init_Impl had...
    
    "
      // bFmt = temporary Flag passed on in the Constructor(),
      // if bFmt == 2, then also sal_True,
      // additional suppression of the standard button,
      // after the Initializing set to sal_True again
      if ( bFmtFlag != 2 )
          m_pBaseFmtBtn->Show();
      else
          bFmtFlag = sal_True;
    "
    
    but the variable acted on is bFmtFlag a copy of bFmt, and is never read again
    after that line, so setting it to sal_True is meaningless. The comment suggests
    that the intent is to reset bFmt to true if it was 2 during initialization,
    which fits with the later use of bFmt == 2 to indicate that the standard button was
    clicked, i.e. reset bFmt back to its standard value.
    
    So make bFmt a simple toggle of dialog as a format dialog or not, add a way
    to remove the standard button and add a second variable to indicate the standard
    button got pressed.
    
    Change-Id: I98a441f5f314845abe243e05b6d92fd71d7b0b04
    d913a5a9
styledlg.cxx 3.63 KB