[ Tklib Home | Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]

# swaplist(n) 0.1 tklib "A dialog which allows a user to move options between two lists"

## Name

swaplist - A dialog which allows a user to move options between two lists

## Synopsis

- package require Tcl 8.4
- package require Tk 8.4
- package require swaplist ?0.1?

- ::swaplist::swaplist pathName variable completeList selectedList ?options?

## Description

This package provides a dialog which consists of 2 listboxes, along with buttons to move items between them and reorder the right list.

::swaplist::swaplist pathName variable completeList selectedList ?options?

  Creates a dialog which presents the user with a pair of listboxes. Items are selected by using the buttons to move them to the right list. The contents of the right list are put in the variable upon closure of the dialog. The command returns a boolean indicating if the user pressed OK or not. If -geometry is not specified, the dialog is centered in its parent toplevel unless its parent is . in which case the dialog is centered in the screen.

  Options:

  -embed

    if this flag is supplied, the procedure will create a swaplist widget named pathName, with the variable set as the listvariable for the right side listbox. This flag will also cause the -title and -geometry flags to be ignored.

  -reorder

    boolean specifying if buttons allowing the user to change the order of the right listbox should appear or not. defaults to true

  -title

    sets the title of the dialog window. defaults to "Configuration"

  -llabel

    sets the heading above the left list. defaults to "Available:"

  -rlabel

    sets the heading above the right list. defaults to "Selected:"

  -lbuttontext

    sets the text on the "move left" button. defaults to "<<"

  -rbuttontext

    sets the text on the "move right" button. defaults to ">>"

  -ubuttontext

    sets the text on the "move up" button. defaults to "Move Up"

  -dbuttontext

    sets the text on the "move down" button. defaults to "Move Down"

  -geometry

    sets the geometry of the dialog window.

## EXAMPLE

    package require swaplist
    namespace import swaplist::*
    if {[swaplist .slist opts "1 2 3 4 5 6 7 8 9" "1 3 5"]} {
        puts "user chose numbers: $opts"
    }

## Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category swaplist of the Tklib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.

## Keywords

dialog, disjointlistbox, listbox

## Category

Widget