Gtk2::E...ntainer(3)
π Gtk2::E...ntainer(3) β the glow-up edition π
okay bestie, pull up a chair because we're reading the manual page for Gtk2::Ex::FormFactory::Container, straight out of the User Contributed Perl Documentation. It's a container class. It holds stuff. It's the mother of all mothers. Let's get into it π«Ά
β¨ NAME β¨
Gtk2::Ex::FormFactory::Container β a container in a FormFactory framework. That's it, that's the name, no notes π
πΈ SYNOPSIS πΈ
So here's how you actually summon one:
Gtk2::Ex::FormFactory::Container->new (
title => Visible title of this container,
content => [ List of children ],
...
Gtk2::Ex::FormFactory::Widget attributes
);
See that ...? That's not a bug, that's permission. It's the framework saying "yes queen, add more attributes, you know the vibe" π
π¦ DESCRIPTION π¦
Real talk: this is an abstract base class for all the containers in the Gtk2::Ex::FormFactory framework. It's not a container you use directly, it's the blueprint that the other containers are all giving main character energy from. The blueprint, the template, the blueprint template π
π OBJECT HIERARCHY π
The family tree, and yes it's giving royal lineage:
Gtk2::Ex::FormFactory::Intro
Gtk2::Ex::FormFactory::Widget
+--- Gtk2::Ex::FormFactory::Container
+--- Gtk2::Ex::FormFactory::Buttons
+--- Gtk2::Ex::FormFactory::Expander
+--- Gtk2::Ex::FormFactory::Form
+--- Gtk2::Ex::FormFactory::HBox
+--- Gtk2::Ex::FormFactory::Notebook
+--- Gtk2::Ex::FormFactory::Table
+--- Gtk2::Ex::FormFactory::VBox
+--- Gtk2::Ex::FormFactory::Window
Gtk2::Ex::FormFactory::Layout
Gtk2::Ex::FormFactory::Rules
Gtk2::Ex::FormFactory::Context
Gtk2::Ex::FormFactory::Proxy
Container is literally the parent of Buttons, Expander, Form, HBox, Notebook, Table, VBox and Window. Eight icons. One mom. Slay π
π ATTRIBUTES π
Quick heads up before we dive in β this is important, no skipping:
These attributes go through the usualget_ATTR()/set_ATTR()style accessors, but you're mostly supposed to pass them once to the object constructor. You must not alter them after the associated FormFactory was built. So set them and forget them, bestie, don't be fiddling later π
title= SCALAR [optional] β So every container can have a title. How that title actually shows up on screen? That's up to the implementation of the specific container, or the implementation of that container insideGtk2::Ex::FormFactory::Layout. The default behaviour is to draw a frame around the container widget with this title on it. Cute frame, title, iconic πcontent= ARRAYREF ofGtk2::Ex::FormFactory::Widget's [optional] β This is a reference to an array, and that array holds all the children of this container. That's it. That's the whole vibe. Your little widget children, in a list πΈ
Oh and there's more attributes than just these two, obviously β for those, go check out Gtk2::Ex::FormFactory::Widget π
π₯ METHODS π₯
$container->add_child_widget ( $widget )β Use this to add a child widget to a container widget. Now here's the fun part: if the container hasn't actually been built yet, the widget just gets appended to the container's content list and it'll get built later, along with the container. Team effort β¨
But if the container has already been built, then the widget gets built, shown and updated on the spot. So adding widgets at runtime? Absolutely no problem, do it whenever, it's fine, the framework is not going to make it weird π«Ά
$container->remove_child_widget ( $widget )β Removes a child widget from this container. And heads up, this one's serious: if the container is built, the widget gets destroyed completely, and the$widgetreference may not be used any further. Like, gone gone. Don't touch it after this. It's over, periodt π
π AUTHORS π
JΓΆrn Reder <joern at zyn dot de> β thank you for your service, king π
β COPYRIGHT AND LICENSE β
Copyright 2004-2006 by JΓΆrn Reder.
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.
You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA.
π POD ERRORS π
Not me exposing the document's own little mistakes π The above doc had some coding errors and here's the tea:
Around line 335:
Non-ASCII character seen before =encoding in 'JΓΆrn'. Assuming UTF-8
It's the umlaut. It's always the umlaut. The parser saw JΓΆrn and just went "assuming UTF-8, hope that's right" π
and that's the whole page, bestie, you're officially educated π This gem is perl v5.42.0, dated 2025-07-25 β so jot that down, cite it, put it in your notes app, and go build something gorgeous πΈβ¨π¦
π¦ where this page comes from
- fedora 43: perl-Gtk2-Ex-FormFactory 0.67-39.fc43 Β· LicenseRef-Callaway-LGPLv2+
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms