src/file.cpp

changeset 251
c4b96bc41298
parent 250
6e80f038e8df
child 252
3f9067022d74
equal deleted inserted replaced
250:6e80f038e8df 251:c4b96bc41298
235 } 235 }
236 236
237 // ============================================================================= 237 // =============================================================================
238 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 238 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
239 // ============================================================================= 239 // =============================================================================
240 std::vector<LDObject*> loadFileContents (FILE* fp, ulong* numWarnings, bool* ok) { 240 vector<LDObject*> loadFileContents (FILE* fp, ulong* numWarnings, bool* ok) {
241 vector<str> lines; 241 vector<str> lines;
242 vector<LDObject*> objs; 242 vector<LDObject*> objs;
243 243
244 if (numWarnings) 244 if (numWarnings)
245 *numWarnings = 0; 245 *numWarnings = 0;
321 if (g_loadingMainFile) 321 if (g_loadingMainFile)
322 g_curfile = load; 322 g_curfile = load;
323 323
324 ulong numWarnings; 324 ulong numWarnings;
325 bool ok; 325 bool ok;
326 std::vector<LDObject*> objs = loadFileContents (fp, &numWarnings, &ok); 326 vector<LDObject*> objs = loadFileContents (fp, &numWarnings, &ok);
327 327
328 if (!ok) { 328 if (!ok) {
329 load = oldLoad; 329 load = oldLoad;
330 return null; 330 return null;
331 } 331 }
829 829
830 // ============================================================================= 830 // =============================================================================
831 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 831 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
832 // ============================================================================= 832 // =============================================================================
833 void LDOpenFile::insertObj (const ulong pos, LDObject* obj) { 833 void LDOpenFile::insertObj (const ulong pos, LDObject* obj) {
834 m_objs.insert (m_objs.begin () + pos, obj); 834 m_objs.insert (pos, obj);
835 835
836 if (this == g_curfile) 836 if (this == g_curfile)
837 g_BBox.calcObject (obj); 837 g_BBox.calcObject (obj);
838 } 838 }
839 839
840 // ============================================================================= 840 // =============================================================================
841 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 841 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
842 // ============================================================================= 842 // =============================================================================
843 void LDOpenFile::forgetObject (LDObject* obj) { 843 void LDOpenFile::forgetObject (LDObject* obj) {
844 // Find the index for the given object 844 // Find the index for the given object
845 ulong ulIndex; 845 ulong idx;
846 for (ulIndex = 0; ulIndex < (ulong)m_objs.size(); ++ulIndex) 846 for (idx = 0; idx < (ulong)m_objs.size(); ++idx)
847 if (m_objs[ulIndex] == obj) 847 if (m_objs[idx] == obj)
848 break; // found it 848 break; // found it
849 849
850 if (ulIndex >= m_objs.size ()) 850 if (idx >= m_objs.size ())
851 return; // was not found 851 return; // was not found
852 852
853 // Erase it from memory 853 // Erase it from memory
854 m_objs.erase (m_objs.begin() + ulIndex); 854 m_objs.erase (idx);
855 855
856 // Update the bounding box 856 // Update the bounding box
857 if (this == g_curfile) 857 if (this == g_curfile)
858 g_BBox.calculate (); 858 g_BBox.calculate ();
859 } 859 }
860 860
861 // ============================================================================= 861 // =============================================================================
862 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 862 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
863 // ============================================================================= 863 // =============================================================================
864 std::vector<partListEntry> g_PartList; 864 vector<partListEntry> g_PartList;
865 865
866 void initPartList () { 866 void initPartList () {
867 logf ("%s: initializing parts.lst\n", __func__); 867 logf ("%s: initializing parts.lst\n", __func__);
868 868
869 FILE* fp = openLDrawFile ("parts.lst", false); 869 FILE* fp = openLDrawFile ("parts.lst", false);

mercurial