void CBOINCBaseView::OnColClick(wxListEvent& event) { wxListItem item; int newSortColIndex = event.GetColumn(); int oldSortColIndex = -1; if (newSortColIndex < 0) return; // Clicked past last column if (m_iSortColumnID >= 0) { oldSortColIndex = m_iColumnIDToColumnIndex[m_iSortColumnID]; } item.SetMask(wxLIST_MASK_IMAGE); if (newSortColIndex == oldSortColIndex) { m_bReverseSort = !m_bReverseSort; SetSortColumn(newSortColIndex); } else { // Remove sort arrow from old sort column if (oldSortColIndex >= 0) { item.SetImage(-1); m_pListPane->SetColumn(oldSortColIndex, item); } m_iSortColumnID = m_iColumnIndexToColumnID[newSortColIndex]; m_bReverseSort = false; SetSortColumn(newSortColIndex); } // Write the change to the registry // Do this here because SetListColumnOrder() can call SetSortColumn() // even when neither m_iSortColumnID nor m_bReverseSort changes wxConfigBase* pConfig = wxConfigBase::Get(false); pConfig->SetPath(wxT("/") + GetViewName()); m_pListPane->OnSaveState(pConfig); }
void CMyClientMainView::OnInitialUpdate() { CListViewEx::OnInitialUpdate(); if(m_imagelist.GetSafeHandle()) return; CListCtrl& lcCountries = GetListCtrl(); m_imagelist.Create(16, 16,ILC_COLOR24 |ILC_MASK,6,6); m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON_COMPUTER)); m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON_COMPUTER)); m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON_VIDEO)); lcCountries.SetImageList(&m_imagelist,LVSIL_SMALL); lcCountries.InsertColumn(0,"已连接的客户列表",LVCFMT_LEFT,104); lcCountries.InsertColumn(1,"客户注释",LVCFMT_LEFT,60); lcCountries.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_HEADERDRAGDROP| LVS_EX_ONECLICKACTIVATE | LVS_EX_UNDERLINEHOT |LVS_EX_SUBITEMIMAGES); EnableColumnHiding(0, true); EnableColumnHiding(1, true); EnableSortIcon (1); ColorSortColumn(1); SetSortColumn (1); KeepLabelLeft (); lcCountries.SortItems(CompareCountries, (LPARAM) this); }
void PackageListView::AllAttached() { BColumnListView::AllAttached(); SetSortingEnabled(true); SetSortColumn(ColumnAt(0), false, true); }
// Operations bool DoSortItems(int iCol, bool bDescending = false) { HAL_DEV_SORT_MSG(hal::wform(L"DoSortItems(int iCol = %1%, bool bDescending = %2%)") % iCol % bDescending); T* pT = static_cast<T*>(this); ATLASSERT(::IsWindow(pT->m_hWnd)); ATLASSERT(iCol >= 0 && iCol < m_arrColSortType.GetSize()); WORD wType = m_arrColSortType[iCol]; if(wType == WTL::LVCOLSORT_NONE) return false; else if (wType <= WTL::LVCOLSORT_LAST) { HAL_DEV_SORT_MSG(hal::wform(L"wType = %1%, passing DoSort() to base class") % wType); return WTL::CSortListViewImpl<T>::DoSortItems(iCol, bDescending); } int nCount = pT->GetItemCount(); if(nCount < 2) { m_bSortDescending = bDescending; SetSortColumn(iCol); return true; } WTL::CWaitCursor waitCursor(false); if(m_bUseWaitCursor) waitCursor.Set(); bool bRet = pT->DoSortItemsExternal(iCol, bDescending); if(bRet) { m_bSortDescending = bDescending; SetSortColumn(iCol); } if(m_bUseWaitCursor) waitCursor.Restore(); return bRet; }
PropertyList::PropertyList(const char* name) : BColumnListView(BRect(0.0, 0.0, 1.0, 1.0), name, B_FOLLOW_ALL, 0, B_NO_BORDER, true) { BStringColumn* nameColumn; AddColumn(nameColumn = new BStringColumn("Name", 150, 50, 500, B_TRUNCATE_MIDDLE), kNameColumn); AddColumn(new BStringColumn("Value", 150, 50, 500, B_TRUNCATE_END), kValueColumn); SetSortColumn(nameColumn, false, true); }
void InitSortMenu( HWND hwnd) { SHORT pos; ULONG ctr; HWND hMenu; MENUITEM mi; SetSortIndicatorMenu( hwnd, 0); // get the Sort submenu hMenu = WinWindowFromID( hwnd, FID_MENU); WinSendMsg( hMenu, MM_QUERYITEM, MPFROM2SHORT( IDM_SORT, 0), &mi); hMenu = mi.hwndSubMenu; pos = SHORT1FROMMR( WinSendMsg( hMenu, MM_ITEMPOSITIONFROMID, MPFROM2SHORT( IDM_SORTFIRST, 0), 0)); if (pos < 0) pos = 2; for (ctr = 0; ctr < eCNTCOLS; ctr++) if (SHORT1FROMMR( WinSendMsg( hMenu, MM_DELETEITEM, MPFROM2SHORT( IDM_SORTFIRST + ctr, 0), 0) <= 0)) { printf( "InitSortMenu - early exit, ctr= %d\n", (int)ctr); break; } mi.afStyle = MIS_TEXT; mi.hwndSubMenu = 0; mi.hItem = 0; // insert a menuitem for each column for (ctr = 0; ctr < eCNTCOLS; ctr++, pos++) { mi.iPosition = pos; if (ciX[ctr]->flags & CIF_INVISIBLE) mi.afAttribute = MIA_DISABLED | MIA_NODISMISS; else mi.afAttribute = MIA_NODISMISS; mi.id = (USHORT)(IDM_SORTFIRST + (ciX[ctr]->flags & CIF_NDXMASK)); WinSendMsg( hMenu, MM_INSERTITEM, (MP)&mi, (MP)ciX[ctr]->pszMenu); } // update the sort info without changing the sort column or direction SetSortColumn( hwnd, (ULONG)-1); return; }
int CActiveMemberGrid::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CIBAGrid::OnCreate(lpCreateStruct) == -1) return -1; CBitmap bmp; bmp.LoadBitmap(IDB_NETBARUSER); m_Images.Create(16, 16, ILC_COLOR24 | ILC_MASK, 0, 0); m_Images.Add(&bmp, RGB(250, 50, 250)); SetImageList(&m_Images); SetRowMarker(FALSE); EnableHeader(TRUE, BCGP_GRID_HEADER_SORT | BCGP_GRID_HEADER_MOVE_ITEMS); EnableMarkSortedColumn(FALSE, FALSE); if (CIBAConfig::GetInstance()->GetFontType() > 0) { CIBAHelpper::CreateFont(m_TextFont); SetFont(&m_TextFont); } InitColumnHead(); SetTimer(TimeIdOfUpdateTime, IntervalOfUpdateTime, NULL); SetSortColumn(3, FALSE); //激活时间 LoadState(_T("ActiveMemberGrid"));//从注册表载入 AdjustLayout(); m_lpActiveMemberList->SetWndGrid(GetSafeHwnd()); m_lpActiveMemberList->Start(); SetTimer(TimerIdOfBundleTimeTry, IntervalOfBundleTimeTry, NULL); return 0; }
void CloseOptsDlg( HWND hwnd, BOOL fSave) { HWND hLB; char * ptr; ULONG ctr; do { if (fSave == FALSE) break; fRestoreDefaults = (BOOL)WinSendDlgItemMsg( hwnd, IDC_RESTOREDEF, BM_QUERYCHECK, 0, 0); SetSortIndicators( (BOOL)WinSendDlgItemMsg( hwnd, IDC_LITERAL, BM_QUERYCHECK, 0, 0)); hLB = WinWindowFromID( hwnd, IDC_SORTORDER); for (ctr=0; ctr < VIEWCNT; ctr++) { ptr = (char *)WinSendMsg( hLB, LM_QUERYITEMHANDLE, (MP)ctr, 0); if (ptr == 0) break; apszView[ctr] = ptr; } // update the sort info without changing the sort column or direction SetSortColumn( (ULONG)-1); } while (fFalse); WinDismissDlg( hwnd, 0); return; }
CFileListManager::CFileListManager( vgui::Panel *parent ) : BaseClass( parent, "FileListManager" ) { SetMultiselectEnabled( true ); SetVisible( true ); m_bRefreshRequired = false; SetSize( 800, 200 ); SetPos( 100, 100 ); AddColumn( this, CI_FILENAME ); AddColumn( this, CI_PATH ); AddColumn( this, CI_LOADED ); AddColumn( this, CI_NUMELEMENTS ); AddColumn( this, CI_CHANGED ); AddColumn( this, CI_INPERFORCE ); AddColumn( this, CI_OPENFOREDIT ); SetSortColumn( 0 ); Refresh(); SetScheme( vgui::scheme()->LoadSchemeFromFile( "Resource/BoxRocket.res", "BoxRocket" ) ); // LoadControlSettings( "resource/BxFileListManager.res" ); }
CRssView::CRssView() { m_feedId = 0; SetSortColumn(kDate, false); }
void ListView1::SetDataCDList() { while (CountRows()>0) RemoveRow(0); while (CountColumns()>0) { BColumn *col=ColumnAt(0); //SetColumnVisible(col, true); RemoveColumn(col); /* switch(col->LogicalFieldNum()) { case TRACKNUMBER_FIELD: { ((Application1 *)be_app)->CM->SetInt16(TRACKNUMBERCOLUMN_WIDTH, (int16)col->Width()); break; } case TRACKNAME_FIELD: { ((Application1 *)be_app)->CM->SetInt16(TRACKNAMECOLUMN_WIDTH, (int16)col->Width()); break; } case LENGTH_FIELD: { ((Application1 *)be_app)->CM->SetInt16(LENGTHCOLUMN_WIDTH, (int16)col->Width()); break; } case BYTES_FIELD: { ((Application1 *)be_app)->CM->SetInt16(BYTESCOLUMN_WIDTH, (int16)col->Width()); break; } case INDEX_FIELD: { ((Application1 *)be_app)->CM->SetInt16(INDEXCOLUMN_WIDTH, (int16)col->Width()); break; } case CDTEXT_FIELD: { ((Application1 *)be_app)->CM->SetInt16(CDTEXTCOLUMN_WIDTH, (int16)col->Width()); break; } default: { break; } } */ delete col; } SetSortingEnabled(true); AddColumn(new BBitmapColumn(_T("Icon"), // "FILEICONCOLUMN_TITLE" 18.0,18.0,18.0, B_ALIGN_CENTER), ICON_FIELD); AddColumn(new BFileColumn(_T("File name"), // "FILENAMECOLUMN_TITLE" 200.0, 60.0, 900.0,0), FILENAME_FIELD); AddColumn(new BSizeColumn(_T("Size"), // "SIZECOLUMN_TITLE" 50.0, 20.0, 120.0,B_ALIGN_RIGHT), SIZE_FIELD); ColumnAt(FILENAME_FIELD)->SetEditFlags(B_EDIT_EXIT_RETURN); ColumnAt(FILENAME_FIELD)->SetColumnFlags(ColumnAt(FILENAME_FIELD)->GetColumnFlags() | B_ALLOW_COLUMN_EDIT); ColumnAt(ICON_FIELD)->SetColumnFlags(B_ALLOW_COLUMN_NONE); ColumnAt(ICON_FIELD)->SetShowHeading(false); SetSortColumn(ColumnAt(FILENAME_FIELD), false, true); for (int32 i=0; i<CountColumns(); i++) { SetColumnVisible(ColumnAt(i), true); } for (int32 i=0; i<CountColumns(); i++) { SetColumnVisible(ColumnAt(i), false); } for (int32 i=0; i<CountColumns(); i++) { SetColumnVisible(ColumnAt(i), true); } }
void Command( HWND hwnd, ULONG ulCmd) { switch (ulCmd) { case IDM_DELETE: ToggleDelete(); break; case IDM_DELETEALL: SetDelete( TRUE); break; case IDM_UNDELETEALL: SetDelete( FALSE); break; case IDM_OPEN: OpenObject( hwnd); break; case IDM_LOCATE: LocateObject( hwnd); break; case IDM_MENU: ShowObjMenu( hwnd); break; case IDM_SORTDEL: case IDM_SORTNBR: case IDM_SORTVIEW: case IDM_SORTTITLE: case IDM_SORTSIZE: case IDM_SORTKEY: case IDM_SORTPATH: SetSortColumn( ulCmd - IDM_SORTFIRST); break; case IDM_SORTDONE: break; case IDM_GETDATA: if (SaveChanges( "Reload", TRUE)) GetData(); break; case IDM_RESETCOL: ResetColumnWidths(); break; case IDM_SAVE: SaveChanges( "Save now", FALSE); break; case IDM_OPTDLG: WinDlgBox( HWND_DESKTOP, // parent-window hwnd, // owner-window OptionsDlgProc, // dialog proc NULLHANDLE, // EXE module handle IDD_OPTIONS, // dialog id NULL); // pointer to create params break; } return; }