29 #ifndef _CEGUIFrameWindow_h_
30 #define _CEGUIFrameWindow_h_
33 #include "../Window.h"
36 # pragma warning(push)
37 # pragma warning(disable : 4251)
48 class CEGUIEXPORT FrameWindow :
public Window
51 static const String EventNamespace;
52 static const String WidgetTypeName;
63 static const String EventRollupToggled;
69 static const String EventCloseClicked;
75 static const String EventDragSizingStarted;
81 static const String EventDragSizingEnded;
84 static const float DefaultSizingBorderSize;
89 static const String TitlebarName;
90 static const String CloseButtonName;
119 virtual void initialiseComponents(
void);
129 bool isSizingEnabled(
void)
const {
return d_sizingEnabled && isFrameEnabled();}
139 bool isFrameEnabled(
void)
const {
return d_frameEnabled;}
149 bool isTitleBarEnabled(
void)
const;
159 bool isCloseButtonEnabled(
void)
const;
169 bool isRollupEnabled(
void)
const {
return d_rollupEnabled;}
178 void setRolledup(
bool val);
187 bool isRolledup(
void)
const {
return d_rolledup;}
197 float getSizingBorderThickness(
void)
const {
return d_borderSize;}
210 void setSizingEnabled(
bool setting);
223 void setFrameEnabled(
bool setting);
236 void setTitleBarEnabled(
bool setting);
249 void setCloseButtonEnabled(
bool setting);
262 void setRollupEnabled(
bool setting);
272 void toggleRollup(
void);
284 void setSizingBorderThickness(
float pixels) {d_borderSize = pixels;}
299 void offsetPixelPosition(
const Vector2f& offset);
309 bool isDragMovingEnabled(
void)
const {
return d_dragMovable;}
322 void setDragMovingEnabled(
bool setting);
333 const Image* getNSSizingCursorImage()
const;
343 const Image* getEWSizingCursorImage()
const;
353 const Image* getNWSESizingCursorImage()
const;
363 const Image* getNESWSizingCursorImage()
const;
375 void setNSSizingCursorImage(
const Image* image);
387 void setEWSizingCursorImage(
const Image* image);
399 void setNWSESizingCursorImage(
const Image* image);
411 void setNESWSizingCursorImage(
const Image* image);
425 void setNSSizingCursorImage(
const String& name);
439 void setEWSizingCursorImage(
const String& name);
453 void setNWSESizingCursorImage(
const String& name);
467 void setNESWSizingCursorImage(
const String& name);
470 bool isHit(
const Vector2f& position,
const bool )
const
525 bool moveLeftEdge(
float delta,
URect& out_area);
535 bool moveRightEdge(
float delta,
URect& out_area);
545 bool moveTopEdge(
float delta,
URect& out_area);
555 bool moveBottomEdge(
float delta,
URect& out_area);
584 bool isLeftSizingLocation(
SizingLocation loc)
const {
return ((loc == SizingLeft) || (loc == SizingTopLeft) || (loc == SizingBottomLeft));}
597 bool isRightSizingLocation(SizingLocation loc)
const {
return ((loc == SizingRight) || (loc == SizingTopRight) || (loc == SizingBottomRight));}
610 bool isTopSizingLocation(SizingLocation loc)
const {
return ((loc == SizingTop) || (loc == SizingTopLeft) || (loc == SizingTopRight));}
623 bool isBottomSizingLocation(SizingLocation loc)
const {
return ((loc == SizingBottom) || (loc == SizingBottomLeft) || (loc == SizingBottomRight));}
630 bool closeClickHandler(
const EventArgs& e);
637 void setCursorForPoint(
const Vector2f& pt)
const;
644 virtual Rectf getSizingRect(
void)
const {
return Rectf(0, 0, d_pixelSize.d_width, d_pixelSize.d_height);}
688 bool d_rollupEnabled;
692 bool d_sizingEnabled;
698 const Image* d_nsSizingCursor;
699 const Image* d_ewSizingCursor;
700 const Image* d_nwseSizingCursor;
701 const Image* d_neswSizingCursor;
710 void addFrameWindowProperties(
void);
715 #if defined(_MSC_VER)
716 # pragma warning(pop)
719 #endif // end of guard _CEGUIFrameWindow_h_