コード例 #1
0
ファイル: AppDelegate.cs プロジェクト: jonpryor/WebDavViewer
        //
        // This method is invoked when the application has loaded and is ready to run. In this
        // method you should instantiate the window, load the UI into it and then make the window
        // visible.
        //
        // You have 17 seconds to return from this method, or iOS will terminate your application.
        //
        public override bool FinishedLaunching(UIApplication app, NSDictionary options)
        {
            // create a new window instance based on the screen size
            window = new UIWindow (UIScreen.MainScreen.Bounds);

            var servers = XDocument.Load ("Servers.xml");
            var server  = servers.Elements ("Servers").Elements ("Server").First ();

            // Perform any additional setup after loading the view, typically from a nib.
            Builder = new WebDavMethodBuilder {
                Server              = new Uri ((string) server.Attribute ("Uri")),
                NetworkCredential   = new NetworkCredential ((string) server.Attribute ("User"), (string) server.Attribute ("Password")),
            };

            // load the appropriate UI, depending on whether the app is running on an iPhone or iPad
            if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone) {
                var controller = new CollectionViewController (Builder);
                navigationController = new UINavigationController (controller);
                window.RootViewController = navigationController;
            } else {
                var masterViewController = new CollectionViewController (Builder);
                var masterNavigationController = new UINavigationController (masterViewController);
                PagingDetailViewController     = new PagingDetailViewController (masterViewController);
                var detailNavigationController = new UINavigationController (PagingDetailViewController);

                splitViewController = new UISplitViewController ();
                splitViewController.WeakDelegate = PagingDetailViewController;
                splitViewController.ViewControllers = new UIViewController[] {
                    masterNavigationController,
                    detailNavigationController
                };

                window.RootViewController = splitViewController;
            }

            // make the window visible
            window.MakeKeyAndVisible ();

            return true;
        }
コード例 #2
0
        public CollectionViewController(WebDavMethodBuilder builder, string path = "")
            : base(UserInterfaceIdiomIsPhone ? "RootViewController_iPhone" : "RootViewController_iPad", null)
        {
            this.path = path;

            if (!UserInterfaceIdiomIsPhone) {
                this.ClearsSelectionOnViewWillAppear = false;
                this.ContentSizeForViewInPopover = new SizeF (320f, 600f);
            }

            NavigationItem.RightBarButtonItem = new UIBarButtonItem ("Hidden", UIBarButtonItemStyle.Bordered, (o, e) => {
                AppDelegate.ShowHiddenFiles = !AppDelegate.ShowHiddenFiles;

                entries     = null;
                entriesTask = CreateEntriesTask ();
                TableView.ReloadData ();
            });
            NavigationItem.Title    = GetCollectionEntryName (path);

            // Custom initialization
            this.Builder = builder;
            entriesTask = CreateEntriesTask ();
        }
コード例 #3
0
 public WebDavConnection()
 {
     Builder = new WebDavMethodBuilder();
 }
コード例 #4
0
 public DetailViewController(WebDavMethodBuilder builder)
     : base(UserInterfaceIdiomIsPhone ? "DetailViewController_iPhone" : "DetailViewController_iPad", null)
 {
     this.builder = builder;
 }
コード例 #5
0
 public WebDavConnection()
 {
     Builder = new WebDavMethodBuilder ();
 }