MCPcopy Create free account
hub / github.com/bobranten/Ext4Fsd / QuerySelectedItem

Method QuerySelectedItem

Ext2Mgr/Ext2MgrDlg.cpp:1669–1852  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1667}
1668
1669PVOID CExt2MgrDlg::QuerySelectedItem(PBOOL bIsExt2)
1670{
1671 CString str = "Ready";
1672 PVOID List = NULL;
1673
1674 PEXT2_CDROM Cdrom = NULL;
1675 PEXT2_DISK Disk = NULL;
1676 PEXT2_VOLUME Volume = NULL;
1677 PEXT2_PARTITION Part = NULL;
1678
1679 LVITEM lvItem;
1680 memset(&lvItem, 0, sizeof(LVITEM));
1681 lvItem.mask = LVIF_PARAM | LVIF_IMAGE;
1682
1683 m_sdev = NULL;
1684 m_type = 0;
1685
1686 CMenu* pMenu = AfxGetMainWnd()->GetMenu();
1687 CMenu* pTools = NULL;
1688 pTools = pMenu->GetSubMenu(1);
1689
1690 if (bIsExt2) {
1691 *bIsExt2 = FALSE;
1692 }
1693
1694 pTools->EnableMenuItem(ID_DRV_LETTER, MF_BYCOMMAND|MF_GRAYED|MF_DISABLED);
1695 pTools->EnableMenuItem(ID_CHANGE, MF_BYCOMMAND|MF_GRAYED|MF_DISABLED);
1696 pTools->EnableMenuItem(ID_FORMAT, MF_BYCOMMAND|MF_GRAYED|MF_DISABLED);
1697 pTools->EnableMenuItem(ID_PROPERTY, MF_BYCOMMAND|MF_GRAYED|MF_DISABLED);
1698
1699 if (m_bFocusVolume) {
1700
1701 if (m_IndexVolume == -1 ||
1702 m_IndexVolume >= m_VolumeList.GetItemCount()) {
1703 goto errorout;
1704 }
1705
1706 lvItem.iItem = m_IndexVolume;
1707 m_VolumeList.GetItem(&lvItem);
1708
1709 PEXT2_VOLUME Volume = (PEXT2_VOLUME) lvItem.lParam;
1710 if (!Volume) {
1711 goto errorout;
1712 }
1713 Cdrom = (PEXT2_CDROM) Volume;
1714 m_type = Volume->Magic;
1715
1716 if (Volume->Magic == EXT2_VOLUME_MAGIC) {
1717 str.Format("VOLUME: %s %s %s",
1718 Ext2QueryVolumeLetterStrings(
1719 Volume->DrvLetters, NULL),
1720 Volume->FileSystem, Volume->Name);
1721 m_sdev = (PVOID) Volume;
1722
1723 if (Volume->bRecognized && (Volume->EVP.bExt2 || Volume->EVP.bExt3)) {
1724 pTools->EnableMenuItem(ID_CHANGE, MF_BYCOMMAND|MF_ENABLED);
1725 }
1726 pTools->EnableMenuItem(ID_FORMAT, MF_BYCOMMAND|MF_ENABLED);

Callers

nothing calls this directly

Calls 1

Tested by

no test coverage detected