Ticket #365 (closed enhancement: fixed)

Opened 2 years ago

Last modified 1 year ago

Implement data manager

Reported by: troy Assigned to: mekstran
Priority: critical Milestone: Goanna release 0.5
Component: Goanna Version:
Keywords: Cc:
Blocking:

Description (Last modified by mekstran)

Make it so there is a button & keyboard shortcut to allow going to the next conflict as well as 'accepting' the new change.

Change History

12/20/06 17:22:07 changed by mekstran

  • milestone set to Goanna release 0.5.

This will be implemented with a new Data Manager mechanism.

01/12/07 22:04:19 changed by mekstran

  • summary changed from Hotkeys for "go to next conflict" and "accept" to Implement data manager.

I'll use this ticket to document what I want to do with a data manager now.

We should have a data manager, viewing some kind of logical tree of data. This will allow filtering (e.g., only conflicting, only new, etc.), searching, etc. It will allow data to be accepted (and likely edited), and will also allow for data to be removed. Logical keyboard navitgation should be provided.

I've started working on the UI for this in data-manager.glade.

01/12/07 22:07:54 changed by mekstran

  • description changed.

01/17/07 16:35:57 changed by mekstran

More things that need to be done with this: Once it's possible to delete data values, we need to actually remove those values from the XML data. This will require some re-thinking of how PropSet's are handled, most likely. Some kind of linkage so we can actually delete the xml data is needed. Whether this happens immediately or at want_save is unknown; whatever seems to work best works.

01/19/07 18:19:20 changed by mekstran

  • owner changed from mekstran to bshearer.

I think I'll have Brandon work on this one. A nice comprehensive project.

I've started on the UI layout in data-manager.glade; you'll need Glade to manipulate that file. Glade can be had from MacPorts? (aka DarwinPorts?), which is installed on the Intel mac (you're using it to provide the classic Unix environment Goanna needs to build).

You'll want to wait to really dig into this until I'm done with #285 and the changes that will happen with that - it'll make your life much, much easier.

To do this cleanly, a custom GtkTreeModel should be written to provide the data behind the property tree that the user will be editing.

This should require some noticable additional capabilities in the Goanna model, I think.

01/19/07 18:24:27 changed by mekstran

  • description changed.

03/16/07 13:57:56 changed by mekstran

Goanna/DataManager documents work on this.

03/23/07 20:16:16 changed by bshearer

(In [1862]) References #365. Branching to implement the data manager.

04/23/07 18:44:08 changed by mekstran

  • priority changed from major to critical.
  • blocking changed.

05/01/07 14:34:02 changed by mekstran

  • owner changed from bshearer to mekstran.
  • status changed from new to assigned.

Actually, I'll be working on this one.

05/01/07 22:49:37 changed by mekstran

(In [2040]) References #365. Work towards making NotifyingListModel? more general, and supporting trees. It breaks things though - lists only display 1 element.

05/02/07 18:38:35 changed by mekstran

(In [2041]) Refs #365. Fixed the NotifyingListModel to actually work again, and added more logging.

(follow-up: ↓ 14 ) 05/02/07 21:58:57 changed by mekstran

(In [2043]) Refs #365. Updated interface between the NotifyingListModel and its adapters.

(in reply to: ↑ 13 ) 05/02/07 21:59:41 changed by mekstran

Replying to mekstran:

(In [2043]) Refs #365. Updated interface between the NotifyingListModel and its adapters.

[2042] also works on this.

05/02/07 23:42:41 changed by mekstran

(In [2044]) Refs #365. Some (untested) code to work on building a notifying_list tree.

05/03/07 22:42:24 changed by mekstran

(In [2049]) References #365. Initial data manager code (really does nothing).

05/03/07 23:11:33 changed by mekstran

(In [2050]) Refs #365. Some more work towards the models (still no data on screen).

05/03/07 23:18:16 changed by mekstran

(In [2051]) A bit more, mostly cleanup. Refs #365.

05/07/07 19:10:09 changed by mekstran

(In [2052]) Refs #365. Working NotifyingTreeModel code, so the data manager now displays a tree.

05/07/07 21:36:08 changed by mekstran

(In [2054]) References #365. Several enhancements wrt labelling.

05/07/07 22:22:04 changed by mekstran

(In [2057]) References #365. Added display info for network devices.

05/07/07 22:47:33 changed by mekstran

[2058] also works on this...

05/14/07 15:32:20 changed by mekstran

(In [2132]) Refs #365. Adds status indicators to data manager icons.

05/14/07 16:23:57 changed by mekstran

(In [2134]) Refs #365. Fixed object destruction order in MainWindow so the DataManager doesn't crash at shutdown.

05/15/07 20:45:09 changed by mekstran

(In [2155]) Several nice new things for the networking display and data manager. Refs #365.

05/15/07 22:51:09 changed by mekstran

(In [2158]) Refs #365. Added some more niceness to the data manager. Now crashes at shutdown though.

05/16/07 16:27:28 changed by mekstran

(In [2159]) Fixes shutdown behavior in the data manager (refs #365).

  • Made the DataManager kill itself at window close.
  • Added signal_shutdown() to DataManager and made MainWindow use this to clear its pointer

05/16/07 19:40:11 changed by mekstran

(In [2161]) Several enhancements and improvements on the data manager, as more features come along! Refs #365.

05/16/07 22:17:16 changed by mekstran

(In [2163]) Refs #365. More work on this data manager.

05/17/07 17:28:48 changed by mekstran

(In [2164]) Wired property source-supplied value accept buttons. Refs #365.

05/17/07 17:47:38 changed by mekstran

(In [2167]) Refs #365: more DataManager? UI enhancements.

  • Added version detect for the GtkButton "image" property, so we still use it if it's available
  • Added tooltips and put them on a few widgets which are programatically added.

05/17/07 23:08:17 changed by mekstran

(In [2171]) Refs #365. Re-vamped the property mechanism to use types, templates, etc. Should help provide useful behavior in the future.

05/18/07 19:11:52 changed by mekstran

(In [2175]) Refs #365. Adds more UI for the data manager. Also fixes s GLib warning in the node viewer.

05/18/07 23:06:59 changed by mekstran

(In [2177]) Got some working accelerator things done. Refs #365.

05/21/07 15:45:31 changed by mekstran

(In [2178]) Refs #365. Added support for displaying parents of conflicted items but not considering them conflicted.

  • Adds the SavedObject::walk() method, for walking a data tree.
  • Reworks filtering in the DataManager, to use a memoization table and other nifty things.
  • Added a recur parameter to SavedObject::get_status(), for specifying whether the status ought to examine child status.
  • Added the SavedObject::get_child_objects() method to create a non-notifying list of child objects.

05/21/07 20:28:27 changed by mekstran

(In [2184]) Refs #365. Adds support for editing network ports.

05/22/07 20:52:06 changed by mekstran

(In [2195]) Added a new metaphor for "add", and made buttons use it. Also added support for displaying network devices in the data manager. Refs #365.

05/23/07 23:04:01 changed by mekstran

(In [2198]) Refs #365. Adds support for deleting nodes to the data manager.

05/24/07 19:23:07 changed by mekstran

(In [2200]) Refs #365. Fixes code so that it doesn't crash when deleting a node.

  • Added support to the topography to watch for node deletions
  • Made MainWindow clear the selection and suspend the system prior to tearing it down

(follow-up: ↓ 42 ) 05/25/07 01:29:04 changed by mekstran

(In [2207]) Refs #365. Adds support for deleting nodes and tracking those deletions in the topography model.

(in reply to: ↑ 41 ) 05/25/07 01:30:11 changed by mekstran

Replying to mekstran:

(In [2207]) Refs #365. Adds support for deleting nodes and tracking those deletions in the topography model.

Correction: this adds delete-network-device support, not node.

05/25/07 01:56:18 changed by mekstran

(In [2208]) Added support for adding nodes to the Data Manager. Refs #365.

05/25/07 01:58:11 changed by mekstran

(In [2209]) Refs #365. Set the New Items checkbox to be checked when the data manager starts for a better UI experience.

05/25/07 02:11:19 changed by mekstran

(In [2211]) Refs #365. Adds support for adding network devcies.

(follow-up: ↓ 47 ) 05/25/07 02:12:05 changed by mekstran

This can use a few more features here and there, but I'm going to call it done. Troy, have fun.

(in reply to: ↑ 46 ) 05/25/07 02:12:50 changed by mekstran

  • status changed from assigned to closed.
  • resolution set to fixed.

Replying to mekstran:

This can use a few more features here and there, but I'm going to call it done. Troy, have fun.

Forgot the ticket changes.