#pragma once // Dosya işlemleri modülü: STEP içe/dışa aktarma (.fkcache önbellek dahil) + APT/CL // (.FikoApt) içe/dışa aktarma. Ağır parse/mesh worker thread'de (GorevSistemi), // finalize main-thread'de. main.cpp'deki lambda gövdeleri BİREBİR taşındı; yalnız // yerel erişim UygulamaBaglam'a uyarlandı (davranış değişikliği yok). #include #include namespace fiko { struct UygulamaBaglam; // STEP/APT dosya seç (aç/kaydet) — Win32 ortak iletişim kutusu. std::string dosyaSec(HWND pencere, bool kaydet); std::string aptDosyaSec(HWND pencere, bool kaydet); // Web dosyası seç (aç): .FikoOp (Fikoperasyon) + .wrl (VRML97). Boş = iptal. std::string webDosyaSec(HWND pencere); // Görüntü/simge dosyası seç (.svg/.png/.jpg/.bmp/.gif). Boş = iptal. std::string resimDosyaSec(HWND pencere); // Tüm desteklenen içe aktarma türleri için BİRLEŞİK "Aç" diyaloğu (toolbar/menü). // Seçilen yolun uzantıya göre yönlendirilmesi yolAc() içinde yapılır. Boş = iptal. std::string tumDosyaSec(HWND pencere); // Komut gövdeleri (menü/palet'ten çağrılır). void stepAc(UygulamaBaglam& b); void stepKaydetKomut(UygulamaBaglam& b); // Yerel .fikocad belgesi (tam durum + kamera) aç / kaydet. void fikoAc(UygulamaBaglam& b); void fikoKaydetKomut(UygulamaBaglam& b); // Diyalogsuz kaydet (yol dışarıdan): makro/MCP otomasyonu + betik. Boş yol → no-op. void fikoKaydetYola(UygulamaBaglam& b, const std::string& yol); void disaAktarKomut(UygulamaBaglam& b); // çok-format (STEP/STL/OBJ/IGES) dışa aktar void aptAc(UygulamaBaglam& b); void aptAktar(UygulamaBaglam& b); void gkodAktar(UygulamaBaglam& b); // seçili operasyon(lar) → NC/G-Kod dosyası // Web dosyası içe aktar (.FikoOp mesh+takım yolu / .wrl VRML mesh) — dialog + yolAc. void webAc(UygulamaBaglam& b); // Toolbar/menü BİRLEŞİK "Aç" komutu: tumDosyaSec() ile tüm desteklenen türleri // (.fikocad, .step/.stp, .FikoApt/.apt, .FikoOp, .wrl) tek diyalogda sunar, // seçilen yolu yolAc() merkezi yönlendiricisine iletir. İptal → no-op. void acKomut(UygulamaBaglam& b); // "Yeni Belge": yeni fikocad.exe süreci başlatır (süreç izolasyonu). Alt toolbar butonu. void yeniBelgeKomut(UygulamaBaglam& b); // Yola göre içe aktarma (universal palet "Dosya" kaynağı → hızlı yeniden açma). // Uzantıya göre doğru içe aktarıcıyı seçer (.step/.stp → STEP, .FikoApt/.apt → APT). void yolAc(UygulamaBaglam& b, const std::string& yol); } // namespace fiko