tixListNoteBook(n)

πŸ“¦ version 8.4.3, in opensuse-leap 16.0

✨ tixListNoteBook(n) ✨

okay so bestie, this is the manual page for tixListNoteBook β€” one of the Tix Built-In Commands, and honestly it's giving main character energy in the GUI world πŸ’…


🌸 SYNOPSIS 🌸

tixListNoteBook pathName ?options?

πŸŽ€ STANDARD OPTIONS πŸŽ€

The ListNoteBook widget supports all the standard options of a frame widget, periodt. Need the deets? Go peek at the options(n) manual entry β€” it's all there, iykyk.


πŸ¦‹ WIDGET-SPECIFIC OPTIONS πŸ¦‹

  • -dynamicgeometry dynamicGeometry β€” If this is set to false, the size of the ListNotebook matches the size of the largest page. If it's set to true, the size matches the size of the current page (so yeah, the size may change when the user selects different pages πŸ‘€). The default value is false. And ngl, a setting of true is discouraged.
  • -ipadx ipadX β€” how much internal horizontal padding goes around the sides of the page subwidgets 🫢
  • -ipady ipadY β€” how much internal vertical padding goes around the sides of the page subwidgets πŸ’–

🧚 SUBWIDGETS 🧚

  • Name: hlist
  • Class: TixHList

The HList widget that displays the names of the pages. she's the little sidebar baddie ✨

In addition, all the page subwidgets created as a result of the add command can be accessed by the subwidget command. They're identified by the pageName parameter to the add command πŸ”₯


πŸ’œ DESCRIPTION πŸ’œ

The tixListNoteBook command creates a new window (given by the pathName argument) and makes it into a ListNoteBook widget. Additional options, described above, may be specified on the command line or in the option database to configure aspects of the ListNoteBook widget such as its cursor and relief β€” yes, even the vibe of your cursor is configurable, iconic.

The ListNoteBook widget is very similar to the TixNoteBook widget: it can be used to display many windows in a limited space using a "notebook" metaphore πŸ““ (that spelling is straight from the source, we keep it, no cap). The notebook is divided into a stack of pages (windows). At one time only one of these pages can be shown. The user can navigate through these pages by choosing the name of the desired page in the hlist subwidget β€” pick a page, any page, it's giving table of contents πŸŽ€


πŸ‘‘ WIDGET COMMANDS πŸ‘‘

The tixListNoteBook command creates a new Tcl command whose name is the same as the path name of the ListNoteBook widget's window. This command may be used to invoke various operations on the widget. It has the following general form:

pathName option ?arg arg ...?

PathName is the name of the command, which is the same as the ListNoteBook widget's path name. Option and the args determine the exact behavior of the command. The following commands are possible for ListNoteBook widgets:

  • pathName add pageName ?option value ...? β€” Adds a new ListNotebook page subwidget into the ListNoteBook widget. pageName must be the name of an existing entry of the hlist subwidget. You must create the entry before calling the add command β€” order matters, bestie, don't skip steps πŸ™ˆ. Please refer to the tixHList(n) manual entry for adding entries in an HList widget. Additional parameters may be supplied to configure this page subwidget. Possible options are:
    • -createcmd β€” Specifies a TCL command to be called the first time a page is shown on the screen. This option can be used to delay the creation of the contents of a page until necessary. Therefore, it can be used to speed up the interface creation process, especially when there are a large number of pages in a ListNoteBook widget. lazy-loading but make it cute ⭐
    • -raisecmd β€” Specifies a TCL command to be called whenever this page is raised by the user.

When successful, this command returns the pathname of the newly created page. slay πŸ’…

  • pathName cget option β€” Returns the current value of the configuration option given by option. Option may have any of the values accepted by the tixListNoteBook command.
  • pathName configure ?option? ?value option value ...? β€” Query or modify the configuration options of the widget. If no option is specified, returns a list describing all of the available options for pathName (see Tk_ConfigureInfo for information on the format of this list). If option is specified with no value, then the command returns a list describing the one named option (this list will be identical to the corresponding sublist of the value returned if no option is specified). If one or more option-value pairs are specified, then the command modifies the given widget option(s) to have the given value(s); in this case the command returns an empty string. Option may have any of the values accepted by the tixListNoteBook command.
  • pathName delete pageName? β€” Deletes the page identified by pageName. bye bestie 🫢
  • pathName pagecget pageName option β€” Returns the current value of the configuration option given by option in the page given by pageName. Option may have any of the values accepted by the add widget command.
  • pathName pageconfigure pageName ?option? ?value ...? β€” When no option is given, prints out the values of all options of this page. If option is specified with no value, then the command returns the current value of that option. If one or more option-value pairs are specified, then the command modifies the given page's option(s) to have the given value(s); in this case the command returns an empty string. Option may be any of the options accepted by the add widget command.
  • pathName pages β€” Returns a list of the names of all the pages. the whole roster πŸ’–
  • pathName raise pageName β€” Raise the page identified by pageName. put her on top πŸ‘‘
  • pathName raised β€” Returns the name of the currently raised page.
  • pathName subwidget name ?args? β€” When no options are given, this command returns the pathname of the subwidget of the specified name.

When options are given, the widget command of the specified subwidget will be called with these options.


🌈 EXAMPLE 🌈

okay this is the part where it all clicks, fr fr:

set n [tixListNoteBook .n]; pack $n
$n subwidget hlist add page1 -text "Page 1"
$n subwidget hlist add page2 -text "Page 2"

set page1 [$n add page1]
set page2 [$n add page2]

button $page1.b -text "On page1"
button $page2.b -text "On page2"

pack $page1.b
pack $page2.b

$n raise page2

see how the hlist entries gotta exist first before you add? told you. ate. πŸ”₯


πŸ“ BINDINGS πŸ“

When the user activates an entry in the hlist subwidget, the page associated with that entry will be raised to the front. This can be done by using the mouse or keyboard πŸ’…. The hlist subwidget operates with its -selectmode option set to single. See the event bindings of the HList widget for more details.


⭐ KEYWORDS ⭐

Tix(n), tixHList(n)


πŸ’€ heads up bestie: that -dynamicgeometry set to true is explicitly discouraged, and the page-size jumping around is exactly why. lowkey trust the default.

and that's the whole thing! this page is from Tix 4.0, dated the same as the tixListNoteBook(n) entry β€” love that for us. go build something iconic with your notebook πŸŽ€βœ¨πŸ’œ

πŸ“¦ where this page comes from