예제 #1
0
        public DependencyWidget(IConnectedService service, IConnectedServiceDependency dependency)
        {
            Dependency = dependency;
            Service    = service;

            iconView  = new ImageView(dependency.Icon.WithSize(Xwt.IconSize.Small));
            nameLabel = new Label(dependency.DisplayName);

            statusIconView           = new ImageView();
            statusLabel              = new Label();
            statusLabel.LinkClicked += (sender, e) => {
                if (dependency.Status == Status.NotAdded)
                {
                    dependency.AddToProject(CancellationToken.None);
                }
                e.SetHandled();
            };

            container = new HBox();
            container.PackStart(iconView);
            container.PackStart(nameLabel);
            container.PackStart(statusIconView);
            container.PackStart(statusLabel);

            Content = container;
            Update();

            dependency.StatusChanged += HandleDependencyStatusChange;
            service.StatusChanged    += HandleServiceStatusChanged;
        }
		public DependencyWidget (IConnectedService service, IConnectedServiceDependency dependency)
		{
			Dependency = dependency;
			Service = service;

			iconView = new ImageView (dependency.Icon.WithSize (Xwt.IconSize.Small));
			nameLabel = new Label (dependency.DisplayName);

			statusIconView = new ImageView ();
			statusLabel = new Label ();
			statusLabel.LinkClicked += (sender, e) => {
				if (dependency.Status == Status.NotAdded)
					dependency.AddToProject (CancellationToken.None);
				e.SetHandled ();
			};

			container = new HBox ();
			container.PackStart (iconView);
			container.PackStart (nameLabel);
			container.PackStart (statusIconView);
			container.PackStart (statusLabel);

			Content = container;
			Update ();

			dependency.StatusChanged += HandleDependencyStatusChange;
			service.StatusChanged += HandleServiceStatusChanged;
		}