NAME

Tk::AppWindow::Ext::Settings - allow your user to configure settings

SYNOPSIS

my $app = new Tk::AppWindow(@options,
   -extensions => ['Settings'],
);
$app->MainLoop;

DESCRIPTION

Add a settings feature to your application and allow the end user to configure the application.

Creates a menu item in the main menu.

Loads settings file at startup.

CONFIG VARIABLES

-settingsfile

Name of the settings file. Default is settingsrc.

-useroptions

Name of the settings file. Default is settingsrc. A typical setup might look like this:

-useroptions => [
   '*page' => 'Editing',
   '*section' => 'User interface',
   -contentforeground => ['color', 'Foreground'],
   -contentbackground => ['color', 'Background'],
   -contentfont => ['font', 'Font'],
   '*end',
   '*section' => 'Editor settings',
   -contenttabs => ['text', 'Tab size'],
   -contentwrap => ['radio', 'Wrap', [qw[none char word]]],
   '*end',
   '*page' => 'Icons',
   -icontheme => ['list', 'Icon theme', 'available_icon_themes'],
   -iconsize => ['list', 'Icon size', 'available_icon_sizes'],
   '*page' => 'Bars',
   '*section' => 'Menubar',
   -menuiconsize => ['list', 'Icon size', 'available_icon_sizes'],
   '*end',
   '*section' => 'Toolbar',
   -toolbarvisible => ['boolean', 'Visible at launch'],
   -tooliconsize => ['list', 'Icon size', 'available_icon_sizes'],
   -tooltextposition => ['radio', 'Text position', [qw[none left right top bottom]]],
   '*end',
   '*section' => 'Statusbar',
   -statusbarvisible => ['boolean', 'Visible at launch'],
   '*end',
],

It uses Tk::TabbedForm in the popup. See there for details of this option.

COMMANDS

settings

Launches the settings dialog.

METHODS

NBWidget

Returns a reference to the notebook widget in the settingsdialog when this dialog is active. Otherwise returns undef.

AUTHOR

Hans Jeuken (hanje at cpan dot org)

BUGS

Unknown. If you find any, please contact the author.

SEE ALSO

Tk::AppWindow
Tk::AppWindow::BaseClasses::Extension
Tk::AppWindow::BaseClasses::PanelExtension