Exemplo n.º 1
0
        void HandleTagsChanged(object sender, DbItemEventArgs <Tag> args)
        {
            TreeStore store = Model as TreeStore;
            TreeIter  iter, category_iter, parent_iter;

            foreach (Tag tag in args.Items)
            {
                TreeIterForTag(tag, out iter);

                bool category_valid = TreeIterForTag(tag.Category, out category_iter);
                bool parent_valid   = Model.IterParent(out parent_iter, iter);

                if ((category_valid && (category_iter.Equals(parent_iter))) || (!category_valid && !parent_valid))
                {
                    // if we haven't been reparented
                    TreePath path = store.GetPath(iter);
                    store.EmitRowChanged(path, iter);
                }
                else
                {
                    // It is a bit tougher. We need to do an annoying clone of structs...
                    CopyBranch(iter, category_iter, !category_valid, true);
                    store.Remove(ref iter);
                }
            }
        }
Exemplo n.º 2
0
        private void MarkChanged(object sender, DbItemEventArgs args)
        {
            int [] indexes = IndicesOf(args.Items);

            if (indexes.Length > 0 && ItemsChanged != null)
            {
                ItemsChanged(this, new BrowsableEventArgs(indexes, (args as PhotoEventArgs).Changes));
            }
        }
Exemplo n.º 3
0
 // If the user deletes a tag that is in use in the query, remove it from the query too.
 private void HandleTagDeleted(object sender, DbItemEventArgs <Tag> args)
 {
     foreach (Tag t in args.Items)
     {
         foreach (Literal term in rootTerm.FindByTag(t))
         {
             term.RemoveSelf();
         }
     }
 }
Exemplo n.º 4
0
        /** Handlers **/

        // When the user edits a tag (it's icon, name, etc) we get called
        // and update the images/text in the query as needed to reflect the changes.
        private void HandleTagChanged(object sender, DbItemEventArgs <Tag> args)
        {
            foreach (Tag t in args.Items)
            {
                foreach (Literal term in rootTerm.FindByTag(t))
                {
                    term.Update();
                }
            }
        }
Exemplo n.º 5
0
        void HandleTagsRemoved(object sender, DbItemEventArgs <Tag> args)
        {
            TreeIter iter;

            foreach (Tag tag in args.Items)
            {
                if (TreeIterForTag(tag, out iter))
                {
                    (Model as TreeStore).Remove(ref iter);
                }
            }
        }
		private void HandleDbItemsChanged (object sender, DbItemEventArgs args)
		{
#if ENABLE_BEAGLE
			Log.Debug ("Notifying beagle");
			foreach (DbItem item in args.Items) {
				if (item as Photo != null)
					try {
						BeagleNotifier.SendUpdate (item as Photo);
					} catch (Exception e) {
						Log.DebugFormat ("BeagleNotifier.SendUpdate failed with {0}", e.Message);
					}
			}
#endif
		}
Exemplo n.º 7
0
        void HandleTagsAdded(object sender, DbItemEventArgs <Tag> args)
        {
            TreeIter iter = TreeIter.Zero;

            foreach (Tag tag in args.Items)
            {
                if (tag.Category != tag_store.RootCategory)
                {
                    TreeIterForTag(tag.Category, out iter);
                }

                InsertInOrder(iter,
                              tag.Category.Name == tag_store.RootCategory.Name,
                              tag);
            }
        }
Exemplo n.º 8
0
		private void HandleTagsRemoved (object sender, DbItemEventArgs<Tag> args)
		{
			TreeIter iter;

			foreach (Tag tag in args.Items) {
				if (TreeIterForTag (tag, out iter))
					(Model as TreeStore).Remove (ref iter);
			}
		}
Exemplo n.º 9
0
		void HandleDbItemsChanged (object sender, DbItemEventArgs<Photo> args)
		{
			foreach (Photo p in args.Items.Where(p => p != null).Where(p => write_metadata)) {
				FSpot.Jobs.SyncMetadataJob.Create (Database.Jobs, p);
			}

			if (args is PhotoEventArgs && (args as PhotoEventArgs).Changes.TimeChanged)
				query.RequestReload ();
		}
Exemplo n.º 10
0
        private void HandleDbItemsChanged(object sender, DbItemEventArgs<Photo> args)
        {
            foreach (Photo p in args.Items) {
                if (p == null)
                    continue;
                if (write_metadata)
                    FSpot.Jobs.SyncMetadataJob.Create (Database.Jobs, p);
            }

            if (args is PhotoEventArgs && (args as PhotoEventArgs).Changes.TimeChanged)
                query.RequestReload ();
        }
Exemplo n.º 11
0
 void HandlePhotoItemsChanged(object sender, DbItemEventArgs<Photo> e)
 {
     UpdateFolderTree ();
 }
Exemplo n.º 12
0
 void TagStoreItemsRemoved(object sender, DbItemEventArgs<Tag> e)
 {
     RefreshPeopleTreeStore();
 }
Exemplo n.º 13
0
		private void HandleTagsChanged (object sender, DbItemEventArgs<Tag> args)
		{
			TreeStore store = Model as TreeStore;
			TreeIter iter, category_iter, parent_iter;

			foreach (Tag tag in args.Items) {
				TreeIterForTag (tag, out iter);

				bool category_valid = TreeIterForTag(tag.Category, out category_iter);
				bool parent_valid = Model.IterParent(out parent_iter, iter);

				if ((category_valid && (category_iter.Equals (parent_iter))) || (!category_valid && !parent_valid)) {
					// if we haven't been reparented
					TreePath path = store.GetPath (iter);
					store.EmitRowChanged (path, iter);
				} else {
					// It is a bit tougher. We need to do an annoying clone of structs...
					CopyBranch (iter, category_iter, !category_valid, true);
					store.Remove (ref iter);
				}
			}
		}
Exemplo n.º 14
0
 void FaceSpotDbInstanceFacesItemsChanged(object sender, DbItemEventArgs<Face> e)
 {
     //			if(MainNotebook.Page == UnknownFacePage){
     //				unknownFaceIconView.UpdateFaces();
     //			}
     //			else {
     //				knownFaceIconView.UpdateFaces();
     //				suggestFaceIconView.UpdateFaces();
     //			}
 }
Exemplo n.º 15
0
 /** Handlers **/
 // When the user edits a tag (it's icon, name, etc) we get called
 // and update the images/text in the query as needed to reflect the changes.
 private void HandleTagChanged(object sender, DbItemEventArgs<Tag> args)
 {
     foreach (Tag t in args.Items)
         foreach (Literal term in rootTerm.FindByTag (t))
             term.Update ();
 }
Exemplo n.º 16
0
 void MainWindowToplevelDatabasePhotosItemsAdded(object sender, DbItemEventArgs<Photo> e)
 {
     Execute();
 }
Exemplo n.º 17
0
		void HandleTagsChanged (object sender, DbItemEventArgs<Tag> args)
		{
			icon_view.QueueDraw ();
			UpdateTagEntryFromSelection ();
		}
Exemplo n.º 18
0
 // If the user deletes a tag that is in use in the query, remove it from the query too.
 private void HandleTagDeleted(object sender, DbItemEventArgs<Tag> args)
 {
     foreach (Tag t in args.Items)
         foreach (Literal term in rootTerm.FindByTag (t))
             term.RemoveSelf ();
 }
Exemplo n.º 19
0
		private void HandleTagsAdded (object sender, DbItemEventArgs<Tag> args)
		{
			TreeIter iter = TreeIter.Zero;

			foreach (Tag tag in args.Items) {
				if (tag.Category != tag_store.RootCategory)
					TreeIterForTag (tag.Category, out iter);

				InsertInOrder (iter,
					       tag.Category.Name == tag_store.RootCategory.Name,
					       tag);
			}
		}