public GraphicsDegreeView(Document doc) { InitializeComponent(); this.document = (DegreeDocument)doc; zoomFactor = 1; horizontalAdd = 0; verticalAdd = 0; }
/// <summary> /// Létrehoz egy új dokumentumot a hozzá tartozó nézettel. /// </summary> public void NewDocument() { // Bekérdezzük az új font típus (dokumentum) nevét a felhasználótól egy modális dialógs ablakban. NewDocForm form = new NewDocForm(); if (form.ShowDialog() != DialogResult.OK) { return; } // Új dokumentum objektum létrehozása és felvétele a dokumentum listába. // TODO: ne a Document-et példányosítsuk, hanem a leszármazottunkat Document doc = new DegreeDocument(form.DocName, true); documents.Add(doc); createView(doc, true); }
/// <summary> /// Megnyit egy dokumentumot. Nincs implementálva. /// </summary> public void OpenDocument() { // 1. Fájl útvonal megkérdezése a felhasználótól (OpenFileDialog). // http://msdn.microsoft.com/en-us/library/system.windows.forms.openfiledialog.aspx string path = ""; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"; openFileDialog1.FilterIndex = 1; openFileDialog1.DefaultExt = ".txt"; openFileDialog1.RestoreDirectory = false; //openFileDialog1.FileName = ActiveDocument.Name; if (openFileDialog1.ShowDialog() == DialogResult.OK) { // Útvonal mentése path = openFileDialog1.FileName; } // 2. Új dokumentum objektum létrehozása, regisztrálása, nézet létrehozása, stb. // , a NewDocument szolgálhat mintaként. // A dokumentum neve a fájl neve legyen a könyvtár nélkül (ehhez használja a // System.IO.Path osztály GetFileName statikus függvényét) Document doc = new DegreeDocument(path); documents.Add(doc); createView(doc, true); // 3. Dokumentumba adatok betöltése // A dokumentum adatainak elmentése. ActiveDocument.LoadDocument(path); // 4. Nézetek értesítése, hogy frissítsék magukat // Az UpdateAllViews protected, itt nem elérhető. Ne is tegye publikussá, válasszon más // megoldást! Szükség esetén konzultáljon a mérésvezetővel. }