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

NAME

dtRdr::GUI::Wx::Frame - base class for the main frame

SYNOPSIS

This gives finer-grained control than inheriting Wx::Frame directly.

Widget Construction

See dtRdr::GUI::Wx::Frame0

_create_children

  $self->_create_children;

Methods

init

  $frame->init;

init_menumap

Build the menu map.

  $self->init_menumap;

Misc

setup

Sets-up event handlers and such

  $self->setup;

_disable_not_dones

  $self->_disable_not_dones;

setup_progressbar

  $self->setup_progressbar;

Sidebar Control

  $self->sidebar_changed($event);
  $self->sidebar_toggle($event);
  $frame->sidebar_open
  $frame->sidebar_close

activate_sidebar

  $frame->activate_sidebar($event);

activate_reader

  $frame->activate_reader($event);

Menu Events

  $frame->menu_file_open($event);

backend_file_open

  $frame->backend_file_open($filename);

_open_first_book

A hack.

  $frame->_open_first_book;
  $frame->menu_file_add_book;

Close.

Display the document source.

  $frame->menu_view_source;

Toggles the embedded note viewer visibility.

Menu callbacks which activate the respective <foo> sidebar item.

  $frame->menu_view_zoom_in
  $frame->menu_view_zoom_out
  $self->menu_navigation_history_back($event);
  $self->menu_navigation_history_next($event);

This will need to change when we are dealing with multiple servers.

  $frame->menu_connect_anno_sync;
  $frame->menu_connect_anno_settings;
  $frame->menu_help_license;
  $frame->menu_help_about;

Toolbar Events

  $frame->menu_tb_highlight($event);
  $frame->menu_tb_note($evt);
  $self->menu_tb_bookmark($event);
  $self->menu_file_print_page($event);
  $frame->menu_navigation_page_up($event)
  $frame->menu_navigation_page_down($event)

Overridden Methods

Show

Currently assumes that new() did make_splash();

  $frame->Show(1);

Frame Properties

set_title

Set the frame title (with app name) according to preferences.

  $self->set_title($string);

Use this instead of calling SetTitle() directly.

Feedback and User Alerts

error

Show a (blocking) error dialog.

  $frame->error($message);

busy

Run a subroutine while showing a busy cursor.

  my $retval = $frame->busy(sub {...});

mew

Sets a status message and returns an object which resets the status text when it goes out of scope.

  { # some lexical scope
    my $kitten = $frame->mew($text);
  }
  # no more kitten :'(

lock_gui

Lock the user input. Returns an object which unlocks it when destroyed.

  my $lock = $frame->lock_gui;

Menu and Toolbar Empowerment

enable

Turn on an item or profile.

  $frame->enable($item);

disable

Turn off an item or profile.

  $frame->disable($item);

_enabler

  $self->_enabler($name, $val);

Splash stuff

make_splash

Not currently for public consumption.

  $frame->make_splash();

kill_splash

  $frame->kill_splash;

AUTHOR

Eric Wilhelm <ewilhelm at cpan dot org>

http://scratchcomputing.com/

COPYRIGHT

Copyright (C) 2006-2007 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.