Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » ribbonbar quick access launch bar issue Collapse All
Subject Author Date
Brian Horn Nov 12, 2007 - 10:52 PM

Hi,

If we try to add button which is under dropdown menu in quick access bar then we can’t see that icon in quick access launch bar. This problem exists in ribbonbar.exe as well.

Try to add noborder or all border button from broder group under paragraph group under hometab into quick access bar. That button will not appear in quick access launch bar.

Technical Support Nov 14, 2007 - 1:20 PM

Thank you for reporting this bug. To fix it, please update the source code for the following method:

void CExtRibbonOptionsPageCustomizeQATB::OnQatbButtonAdd()
{
      ASSERT_VALID( this );
CExtRibbonBar * pRibbonBar = RibbonOptionsPage_GetBar();
      if( pRibbonBar == NULL )
            return;
      ASSERT_VALID( pRibbonBar );
      if( m_pNodeColQATB == NULL )
            return;
      ASSERT_VALID( m_pNodeColQATB );
INT nSrcSel = m_listBoxChooseCommandsFrom.GetCurSel();
      if( nSrcSel < 0 )
            return;
INT nDstPosLB = m_listBoxCustomizeTarget.GetCount(),
            nDstSel = m_listBoxCustomizeTarget.GetCurSel();
      if( nDstSel >= 0 )
            nDstPosLB = nDstSel + 1;
CExtCustomizeCmdTreeNode * pNode =
             m_listBoxChooseCommandsFrom.m_arrCmds[ nSrcSel ];
      if( pNode == NULL )
      { // ribbon separator item
      } // ribbon separator item
      else
      { // normal item
            CExtCustomizeCmdTreeNode * pNewNode = pNode->CloneNode();
            if( pNewNode == NULL )
                  return;
            CExtRibbonNode * pNewRibbonNode = DYNAMIC_DOWNCAST( CExtRibbonNode, pNewNode );
            if( pNewRibbonNode == NULL )
            {
                  pNewRibbonNode =
                        new CExtRibbonNode(
                              pNode->GetCmdID(false),
                              pNode->GetCmdID(true),
                              NULL,
                              pNode->GetFlags(),
                              NULL,
                              NULL,
                              NULL,
                              pNode->GetLParam(),
                              NULL
                        );
                  delete pNewNode;
                  pNewNode = pNewRibbonNode;
            } // if( pNewRibbonNode == NULL )
            ASSERT( pNewRibbonNode != NULL );
            CArray < DWORD, DWORD > arrILEtoILV;
            arrILEtoILV.Add(
                  __EXT_RIBBON_MAKE_RULE_ARRAY_ENTRY(
                        __EXT_RIBBON_ILE_MAX,
                        __EXT_RIBBON_ILV_SIMPLE_SMALL,
                        false
                        )
                  );
            pNewRibbonNode->RibbonILE_RuleArraySet( arrILEtoILV );
            pNewNode->ModifyFlags( __ECTN_RIBBON_QA_CLONED_COPY );
            m_pNodeColQATB->InsertNode( NULL, pNewNode, nDstPosLB );
            pNewNode->Ribbon_InitCommandsListBox( m_listBoxCustomizeTarget, nDstPosLB, true, false );
      } // normal item
      m_listBoxCustomizeTarget.SetCurSel( nDstPosLB );
      _UpdateButtons();
}