MCPcopy Create free account
hub / github.com/dhewm/dhewm3 / UpdateFileList

Method UpdateFileList

neo/tools/common/OpenFileDialog.cpp:157–207  ·  view source on GitHub ↗

================ rvOpenFileDialog::UpdateFileList Updates the file list with the files that match the filter in the current look in directory ================ */

Source from the content-addressed store, hash-verified

155================
156*/
157void rvOpenFileDialog::UpdateFileList ( void )
158{
159 const char *basepath = mLookin;
160 idFileList *files;
161 HWND list = GetDlgItem ( mWnd, IDC_TOOLS_FILELIST );
162 int i;
163 int filter;
164
165 ListView_DeleteAllItems ( list );
166
167 // Add all the folders first
168 files = fileSystem->ListFiles ( basepath, "/", true );
169 for ( i = 0; i < files->GetNumFiles(); i ++ )
170 {
171 if ( files->GetFile( i )[0] == '.' )
172 {
173 continue;
174 }
175
176 LVITEM item;
177 item.mask = LVIF_TEXT;
178 item.iItem = ListView_GetItemCount ( list );
179 item.pszText = (LPSTR)files->GetFile( i );
180 item.iSubItem = 0;
181 ListView_InsertItem ( list, &item );
182 }
183 fileSystem->FreeFileList( files );
184
185 // Add all the files in the current lookin directory that match the
186 // current filters.
187 for ( filter = 0; filter < mFilters.Num(); filter ++ )
188 {
189 files = fileSystem->ListFiles( basepath, mFilters[filter], true );
190 for ( i = 0; i < files->GetNumFiles(); i ++ )
191 {
192 if ( files->GetFile( i )[0] == '.' )
193 {
194 continue;
195 }
196
197 LVITEM item;
198 item.mask = LVIF_TEXT|LVIF_IMAGE;
199 item.iImage = 2;
200 item.iItem = ListView_GetItemCount( list );
201 item.pszText = (LPSTR)files->GetFile( i );
202 item.iSubItem = 0;
203 ListView_InsertItem ( list, &item );
204 }
205 fileSystem->FreeFileList( files );
206 }
207}
208
209/*
210================

Callers

nothing calls this directly

Calls 5

ListFilesMethod · 0.80
GetNumFilesMethod · 0.80
GetFileMethod · 0.80
FreeFileListMethod · 0.80
NumMethod · 0.45

Tested by

no test coverage detected