The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

dtRdr::GUI::Wx::Tree::AnnoBase - base class for sidebar annotation trees

SYNOPSIS

Methods

init

  $tree->init($frame);

setup_menu

Generate the context menu.

  $self->setup_menu;

append_menu

  $self->append_menu($name, $label, $help);

show_context_menu

Displays the right click context menu for the tree control.

  $tree->show_context_menu($event);

disable_menu_items

Temporarily disables the appropriate menu items, restoring them when the ferret gets loose.

  my $ferret = $self->disable_menu_items($evt);

Public annotations owned by other users will have the results of $self->DISABLED_ITEMS() disabled.

Example: multiple items selected disables goto.

_enables

  $self->_enables($bool, @shortlist);

Menu Events

  $self->menu_delete($event);
  $self->menu_goto($event);

Is also the default event on double-click/enter.

event_or_selection_items

  my @items = $tree->event_or_selection_items($event);

The Tree

populate

Fill in the widget with all the annotations for a book.

  $tree->populate($book);

fetch_annotations

  my @anno = $self->fetch_annotations($book);

mk_root

  $root = $self->mk_root;

add_item

Add an annotation to the tree

  $tree->add_item($anno);

delete_item

  $tree->delete_item($anno);

item_changed

  $tree->item_changed($anno);

TODO: State

  my $state = $tree->capture_state;

  $tree->restore_state($state);

AUTHOR

Eric Wilhelm <ewilhelm at cpan dot org>

http://scratchcomputing.com/

COPYRIGHT

Copyright (C) 2006 Eric L. Wilhelm and OSoft, All Rights Reserved.

NO WARRANTY

Absolutely, positively NO WARRANTY, neither express or implied, is offered with this software. You use this software at your own risk. In case of loss, no person or entity owes you anything whatsoever. You have been warned.

LICENSE

The dotReader(TM) is OSI Certified Open Source Software licensed under the GNU General Public License (GPL) Version 2, June 1991. Non-encrypted and encrypted packages are usable in connection with the dotReader(TM). The ability to create, edit, or otherwise modify content of such encrypted packages is self-contained within the packages, and NOT provided by the dotReader(TM), and is addressed in a separate commercial license.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.