Ejemplo n.º 1
0
STDMETHODIMP CImageApp::OnCreateFrame()
{
    CComPtr<ILXFrameworkFrame> lxframe;
    m_spAddinSite->GetFrame(&lxframe);

    CComQIPtr<IUIFrame> frame = lxframe;

    {
        CComPtr<IUIMenuDlg> menuDlg;
        m_uiManager->CreateMenuDlg(&menuDlg);

        CComPtr<IMenuItem> menuItem;
        m_uiManager->FindMenu(_Module.GetResourceInstance(), IDR_MAINFRAME, &menuItem);

        CComPtr<IMenuItem> menuItem0 = menuItem;
        //menuItem->GetSubMenu(0, &menuItem0);

        menuDlg->InitMenu(menuItem0, this/*CComQIPtr<ICommandTarget>(GetFrame())*/, -1);

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(L"MenuBar", NULL, menuDlg, &dlgsite);

        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

#if 0
    {
        CComPtr<IUIRegisteredDlg> rdlg;
        m_uiManager->RegisterDlg(70/*TODO?IDR_MAINFRAME*/, L"Menubar", 0, &rdlg);

        CComPtr<IUIDlg> dlg;
        rdlg->CreateDlg(&dlg);

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(dlg, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

    {
        CComPtr<IUIDlgSheet> sheet;
        m_uiManager->CreateDlgSheet(NULL, &sheet);
        {
            CComPtr<IUIRegisteredDlg> rdlg;
            m_uiManager->RegisterDlg(100, L"Tools", 0, &rdlg);
            sheet->AddPage(rdlg, NULL);
        }

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(sheet, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

    {
        CComPtr<IUIDlgSheet> sheet;
        m_uiManager->CreateDlgSheet(NULL, &sheet);
        {
            CComPtr<IUIRegisteredDlg> rdlg;
            m_uiManager->RegisterDlg(101, L"Brush", 0, &rdlg);
            sheet->AddPage(rdlg, NULL);
        }

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(sheet, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

    {
        CComPtr<IUIDlgSheet> sheet;
        m_uiManager->CreateDlgSheet(NULL, &sheet);
        {
            CComPtr<IUIRegisteredDlg> rdlg;
            m_uiManager->RegisterDlg(102, L"Layers", 0, &rdlg);
            sheet->AddPage(rdlg, NULL);
        }

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(sheet, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

    {
        CComPtr<IUIDlgSheet> sheet;
        m_uiManager->CreateDlgSheet(NULL, &sheet);
        {
            CComPtr<IUIRegisteredDlg> rdlg;
            m_uiManager->RegisterDlg(103, L"Objects", 0, &rdlg);
            sheet->AddPage(rdlg, NULL);
        }

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(sheet, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

    {
        CComPtr<IUIDlgSheet> sheet;
        m_uiManager->CreateDlgSheet(NULL, &sheet);
        {
            CComPtr<IUIRegisteredDlg> rdlg;
            m_uiManager->RegisterDlg(104, L"Color", 0, &rdlg);
            sheet->AddPage(rdlg, NULL);
        }

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(sheet, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }

    {
        CComPtr<IUIDlgSheet> sheet;
        m_uiManager->CreateDlgSheet(NULL, &sheet);
        {
            CComPtr<IUIRegisteredDlg> rdlg;
            m_uiManager->RegisterDlg(105, L"Brush Tip Shape", 0, &rdlg);
            sheet->AddPage(rdlg, NULL);
        }

        CComPtr<IUIDlgSite> dlgsite;
        m_uiManager->CreateDlgSite(sheet, &dlgsite);

        CComQIPtr<IUIFrame> frame = m_frame;
        frame->FloatControlBar(dlgsite, CPoint(0,0), CBRS_SIZE_DYNAMIC);
    }
#endif

    return S_OK;
}