#include <frame.h>
Inherits Thing, and Container< P, LT, LTI, T >< Workspace, list< Client * >, LClient::iterator, Client >.
Inheritance diagram for Frame:
Public Member Functions | |
Frame (Workspace *workspace, Rectangle *rect) | |
~Frame () | |
void | focus (Client *client) |
void | attach (Client *client) |
Client * | detach (Client *client) |
virtual Window | window () |
virtual void | resize () |
virtual void | illuminate () |
virtual bool | isFocused () |
virtual void | handleButtonPress (XButtonEvent *event) |
virtual void | handleButtonRelease (XButtonEvent *event) |
virtual Cursor | cursorForXY (int pointerX, int pointerY) |
void | matchClientSize (Client *client) |
void | setTree (Tree *t) |
Tree * | tree () const |
void | toggleTiled () |
void | zoomClient () |
Private Attributes | |
bool | isTiled_ |
Tree * | tree_ |
Definition at line 24 of file frame.h.
Definition at line 29 of file frame.cpp.
References Util::get(), isTiled_, KERNEL, Workspace::nextFrameId(), and Thing::setName().
Here is the call graph for this function:
void Frame::focus | ( | Client * | client | ) |
Definition at line 50 of file frame.cpp.
References Client::clientWindow(), Container< P, LT, LTI, T >::focus(), and XCORE.
Referenced by Workspace::focus().
Here is the call graph for this function:
void Frame::attach | ( | Client * | client | ) |
Definition at line 233 of file frame.cpp.
References Container< P, LT, LTI, T >::attach(), Container< P, LT, LTI, T >::childs(), Thing::clientAreaRect_, Rectangle::copy(), Client::frame(), Thing::isVisible(), LOGDEBUG, LOGWARN, Thing::prevRectangle(), Client::reparent(), resize(), Client::setFrame(), Client::show(), window(), Rectangle::x(), XCORE, and Rectangle::y().
Referenced by Workspace::joinFrame(), Workspace::sendClient(), and Workspace::swapClient().
Here is the call graph for this function:
Definition at line 254 of file frame.cpp.
References Rectangle::copy(), Container< P, LT, LTI, T >::detach(), Client::hide(), Thing::isVisible(), LOGDEBUG, Thing::monitor(), Container< P, LT, LTI, T >::next(), Thing::prevRectangle(), Client::reparent(), resize(), Client::setFrame(), Container< P, LT, LTI, T >::size(), Rectangle::x(), XCORE, and Rectangle::y().
Referenced by Workspace::detachClient(), Workspace::joinFrame(), Workspace::sendClient(), Workspace::splitFrame(), and Workspace::swapClient().
Here is the call graph for this function:
Window Frame::window | ( | ) | [virtual] |
Implements Thing.
Definition at line 438 of file frame.cpp.
References Thing::frameWindow_.
Referenced by attach(), handleButtonPress(), and resize().
void Frame::resize | ( | ) | [virtual] |
Resizes all clients of this frame.
Implements Thing.
Definition at line 182 of file frame.cpp.
References Container< P, LT, LTI, T >::begin(), Thing::borderWidth_, Thing::clientAreaRect_, Container< P, LT, LTI, T >::end(), Thing::fitClientArea(), Util::get(), Rectangle::height(), illuminate(), isTiled_, KERNEL, Thing::label_, matchClientSize(), Rectangle::setY(), Container< P, LT, LTI, T >::size(), Util::strToUInt(), Rectangle::width(), window(), Rectangle::x(), XCORE, and Rectangle::y().
Referenced by Split::adjustSize(), Split::attach(), attach(), Split::detach(), detach(), toggleTiled(), and zoomClient().
Here is the call graph for this function:
void Frame::illuminate | ( | ) | [virtual] |
Illuminates this frame.
Implements Thing.
Definition at line 57 of file frame.cpp.
References Thing::areButtonsVisible_, Container< P, LT, LTI, T >::begin(), Thing::borderWidth_, Monitor::buttonWidth(), Draw::drawRectBorder(), Container< P, LT, LTI, T >::end(), Container< P, LT, LTI, T >::focused(), Theme::FOCUSREQ_BACKGROUND, Theme::FOCUSREQ_SHADOW, Theme::FOCUSREQ_SHINE, Theme::FOCUSREQ_TEXT, Thing::frameWindow_, Thing::gc_, Thing::illuminateBorder(), isFocused(), isTiled_, Thing::isVisible(), Thing::label_, Thing::monitor(), Thing::name(), Rectangle::setHeight(), Label::setText(), Rectangle::setWidth(), Rectangle::setX(), Rectangle::setY(), Container< P, LT, LTI, T >::size(), Theme::TAB_BACKGROUND_ACTIVE_FOCUSSED, Theme::TAB_BACKGROUND_ACTIVE_NORMAL, Theme::TAB_BACKGROUND_INACTIVE_FOCUSSED, Theme::TAB_BACKGROUND_INACTIVE_NORMAL, Theme::TAB_SHADOW_ACTIVE_FOCUSSED, Theme::TAB_SHADOW_ACTIVE_NORMAL, Theme::TAB_SHADOW_INACTIVE_FOCUSSED, Theme::TAB_SHADOW_INACTIVE_NORMAL, Theme::TAB_SHINE_ACTIVE_FOCUSSED, Theme::TAB_SHINE_ACTIVE_NORMAL, Theme::TAB_SHINE_INACTIVE_FOCUSSED, Theme::TAB_SHINE_INACTIVE_NORMAL, Theme::TAB_TEXT_ACTIVE_FOCUSSED, Theme::TAB_TEXT_ACTIVE_NORMAL, Theme::TAB_TEXT_INACTIVE_FOCUSSED, Theme::TAB_TEXT_INACTIVE_NORMAL, Thing::theme_, Theme::TILED_SHADOW_FOCUSSED, Theme::TILED_SHADOW_NORMAL, Theme::TILED_SHINE_FOCUSSED, Theme::TILED_SHINE_NORMAL, Thing::titleBarHeight_, Label::update(), Rectangle::width(), and Rectangle::x().
Referenced by handleButtonPress(), Client::illuminate(), resize(), and Workspace::swapClient().
Here is the call graph for this function:
bool Frame::isFocused | ( | ) | [virtual] |
Implements Thing.
Definition at line 42 of file frame.cpp.
References Container< P, LT, LTI, T >::attached(), and Container< P, LT, LTI, T >::focused().
Referenced by handleButtonPress(), illuminate(), and Client::isFocused().
Here is the call graph for this function:
void Frame::handleButtonPress | ( | XButtonEvent * | event | ) | [virtual] |
Implements Thing.
Definition at line 276 of file frame.cpp.
References Thing::areButtonsVisible_, Container< P, LT, LTI, T >::attached(), Container< P, LT, LTI, T >::begin(), Thing::borderWidth_, Thing::buttonState_, Thing::CLOSE, Thing::cursor_, Thing::DEMAX, DOWN, Container< P, LT, LTI, T >::end(), Container< P, LT, LTI, T >::focused(), illuminate(), Singleton< Kernel >::instance(), isFocused(), LEFT, LOGDEBUG, Thing::MINCLIENT, Thing::monitor(), Split::neighbor(), Thing::NONE, Cursors::NORMAL_CURSOR, Cursors::RESIZE_DOWN_CURSOR, Cursors::RESIZE_LEFT_CURSOR, Cursors::RESIZE_RIGHT_CURSOR, Cursors::RESIZE_UP_CURSOR, RIGHT, Kernel::runResizeMode(), Container< P, LT, LTI, T >::size(), Thing::titleBarHeight_, tree_, UP, Rectangle::width(), window(), and XCORE.
Here is the call graph for this function:
void Frame::handleButtonRelease | ( | XButtonEvent * | event | ) | [virtual] |
Implements Thing.
Definition at line 369 of file frame.cpp.
References Container< P, LT, LTI, T >::attached(), Thing::buttonState_, Thing::CLOSE, Thing::DEMAX, Monitor::detachClient(), Container< P, LT, LTI, T >::focused(), Thing::MINCLIENT, Thing::monitor(), Thing::NONE, Thing::titleBarHeight_, Monitor::toggleThingMaximization(), and XCORE.
Here is the call graph for this function:
Cursor Frame::cursorForXY | ( | int | pointerX, | |
int | pointerY | |||
) | [virtual] |
Implements Thing.
Definition at line 395 of file frame.cpp.
References Container< P, LT, LTI, T >::attached(), Thing::borderWidth_, Thing::clientAreaRect_, DOWN, Rectangle::height(), LEFT, Split::neighbor(), Cursors::NORMAL_CURSOR, Cursors::RESIZE_DOWN_CURSOR, Cursors::RESIZE_LEFT_CURSOR, Cursors::RESIZE_RIGHT_CURSOR, Cursors::RESIZE_UP_CURSOR, RIGHT, Thing::titleBarHeight_, tree_, UP, Rectangle::width(), Rectangle::x(), and Rectangle::y().
Here is the call graph for this function:
void Frame::matchClientSize | ( | Client * | client | ) |
Matches client size.
Definition at line 227 of file frame.cpp.
References Thing::clientAreaRect_, Rectangle::copy(), and Client::resize().
Referenced by resize().
Here is the call graph for this function:
void Frame::setTree | ( | Tree * | t | ) |
Definition at line 434 of file frame.cpp.
References tree_.
Referenced by Tree::setFrame(), and Workspace::swapFrame().
Tree * Frame::tree | ( | ) | const |
Definition at line 430 of file frame.cpp.
References tree_.
Referenced by Workspace::attachFrame(), Workspace::destroyFrame(), Workspace::recentVisitedFrame(), and Workspace::swapFrame().
void Frame::toggleTiled | ( | ) |
Definition at line 442 of file frame.cpp.
References isTiled_, and resize().
Referenced by Actions::toggleTiled().
Here is the call graph for this function:
void Frame::zoomClient | ( | ) |
Definition at line 447 of file frame.cpp.
References Container< P, LT, LTI, T >::attached(), Container< P, LT, LTI, T >::begin(), Container< P, LT, LTI, T >::childs(), Container< P, LT, LTI, T >::focused(), Container< P, LT, LTI, T >::next(), resize(), and Container< P, LT, LTI, T >::size().
Referenced by Actions::zoomClient().
Here is the call graph for this function:
bool Frame::isTiled_ [private] |
Definition at line 67 of file frame.h.
Referenced by Frame(), illuminate(), resize(), and toggleTiled().
Tree* Frame::tree_ [private] |
Definition at line 68 of file frame.h.
Referenced by cursorForXY(), handleButtonPress(), setTree(), and tree().