Buckets:
kuklev9797/revit-ckpts / assets /samples /Samples /CloudAPISample /CS /View /ViewInputMigrationInfo.xaml.cs
| // | |
| // (C) Copyright 2003-2023 by Autodesk, Inc. All rights reserved. | |
| // | |
| // Permission to use, copy, modify, and distribute this software in | |
| // object code form for any purpose and without fee is hereby granted | |
| // provided that the above copyright notice appears in all copies and | |
| // that both that copyright notice and the limited warranty and | |
| // restricted rights notice below appear in all supporting | |
| // documentation. | |
| // | |
| // AUTODESK PROVIDES THIS PROGRAM 'AS IS' AND WITH ALL ITS FAULTS. | |
| // AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF | |
| // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. AUTODESK, INC. | |
| // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE | |
| // UNINTERRUPTED OR ERROR FREE. | |
| // | |
| // Use, duplication, or disclosure by the U.S. Government is subject to | |
| // restrictions set forth in FAR 52.227-19 (Commercial Computer | |
| // Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) | |
| // (Rights in Technical Data and Computer Software), as applicable. | |
| using System.IO; | |
| using System.Linq; | |
| using System.Runtime.Serialization; | |
| using System.Windows; | |
| using Microsoft.Win32; | |
| using Newtonsoft.Json; | |
| using Revit.SDK.Samples.CloudAPISample.CS.Migration; | |
| namespace Revit.SDK.Samples.CloudAPISample.CS.View | |
| { | |
| /// <summary> | |
| /// Interaction logic for ViewInputMigrationInfo.xaml | |
| /// </summary> | |
| public partial class ViewInputMigrationInfo : Window | |
| { | |
| /// <summary> | |
| /// Constructor for ViewSamplePortal | |
| /// ViewSamplePortal is a child window aggregating all sample case with tabs | |
| /// </summary> | |
| public ViewInputMigrationInfo(MigrationToBim360 sampleContext) | |
| { | |
| DataContext = sampleContext; | |
| InitializeComponent(); | |
| } | |
| private void OnBtnAddFolder_Click(object sender, RoutedEventArgs e) | |
| { | |
| ((MigrationToBim360) DataContext).Model.AvailableFolders.Add(new FolderLocation()); | |
| } | |
| private void OnBtnRemoveFolder_Click(object sender, RoutedEventArgs e) | |
| { | |
| var model = ((MigrationToBim360) DataContext).Model; | |
| if (lvFolders.SelectedIndex >= 0 && lvFolders.SelectedIndex < model.AvailableFolders.Count) | |
| model.AvailableFolders.RemoveAt(lvFolders.SelectedIndex); | |
| } | |
| private void OnBtnImport_Click(object sender, RoutedEventArgs e) | |
| { | |
| var openFileDialog = new OpenFileDialog {Filter = "Json file (*.json)|*.json|All files (*.*)|*.*"}; | |
| if (openFileDialog.ShowDialog() == true) | |
| { | |
| var model = ((MigrationToBim360) DataContext).Model; | |
| var jsonString = File.ReadAllText(openFileDialog.FileName); | |
| var info = JsonConvert.DeserializeObject<SerializableProjectInfo>(jsonString); | |
| model.AccountGuid = info.AccountGuid; | |
| model.ProjectGuid = info.ProjectGuid; | |
| model.AvailableFolders.Clear(); | |
| foreach (var folder in info.AvailableFolders) model.AvailableFolders.Add(folder); | |
| } | |
| } | |
| private void OnBtnExport_Click(object sender, RoutedEventArgs e) | |
| { | |
| var saveFileDialog = new SaveFileDialog {Filter = "Json file (*.json)|*.json"}; | |
| if (saveFileDialog.ShowDialog() == true) | |
| { | |
| var model = ((MigrationToBim360) DataContext).Model; | |
| var info = new SerializableProjectInfo | |
| { | |
| AccountGuid = model.AccountGuid, | |
| ProjectGuid = model.ProjectGuid, | |
| AvailableFolders = model.AvailableFolders.ToArray() | |
| }; | |
| var jsonString = JsonConvert.SerializeObject(info); | |
| File.WriteAllText(saveFileDialog.FileName, jsonString); | |
| } | |
| } | |
| [] | |
| internal class SerializableProjectInfo | |
| { | |
| [] public string AccountGuid { get; set; } | |
| [] public string ProjectGuid { get; set; } | |
| [] public FolderLocation[] AvailableFolders { get; set; } | |
| } | |
| } | |
| } |
Xet Storage Details
- Size:
- 4.05 kB
- Xet hash:
- 2eb0cd5131989740a52fe224eeb5ab646d4cc760642904fbe164b6c7c1ea4823
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.