CEGUIBasicRenderedStringParser.h | CEGUIBasicRenderedStringParser.h | |||
---|---|---|---|---|
skipping to change at line 36 | skipping to change at line 36 | |||
* OTHER DEALINGS IN THE SOFTWARE. | * OTHER DEALINGS IN THE SOFTWARE. | |||
************************************************************************** */ | ************************************************************************** */ | |||
#ifndef _CEGUIBasicRenderedStringParser_h_ | #ifndef _CEGUIBasicRenderedStringParser_h_ | |||
#define _CEGUIBasicRenderedStringParser_h_ | #define _CEGUIBasicRenderedStringParser_h_ | |||
#include "CEGUIRenderedStringParser.h" | #include "CEGUIRenderedStringParser.h" | |||
#include "CEGUIRect.h" | #include "CEGUIRect.h" | |||
#include "CEGUIColourRect.h" | #include "CEGUIColourRect.h" | |||
#include "CEGUIString.h" | #include "CEGUIString.h" | |||
#include "falagard/CEGUIFalEnums.h" | ||||
#include <map> | ||||
#if defined(_MSC_VER) | ||||
# pragma warning(push) | ||||
# pragma warning(disable : 4251) | ||||
#endif | ||||
// Start of CEGUI namespace section | // Start of CEGUI namespace section | |||
namespace CEGUI | namespace CEGUI | |||
{ | { | |||
/*! | /*! | |||
\brief | \brief | |||
Basic RenderedStringParser class that offers support for 'colour', 'fon | Basic RenderedStringParser class that offers support for the following | |||
t', | tags: | |||
'image' and 'window' control tags. | - 'colour' value is a CEGUI colour property value. | |||
- 'font' value is the name of a font. | ||||
- 'image' value is a CEGUI image property value. | ||||
- 'window' value is the name of a window. | ||||
- 'vert-alignment' value is either top, bottom, centre or stretch. | ||||
- 'padding' value is a CEGUI Rect property value. | ||||
- 'top-padding' value is a float. | ||||
- 'bottom-padding' value is a float. | ||||
- 'left-padding' value is a float. | ||||
- 'right-padding' value is a float. | ||||
- 'image-size' value is a CEGUI size property value. | ||||
- 'image-width' value is a float. | ||||
- 'image-height' value is a float. | ||||
- 'aspect-lock' value is a boolean (NB: this currently has no effect). | ||||
*/ | */ | |||
class CEGUIEXPORT BasicRenderedStringParser : public RenderedStringParser | class CEGUIEXPORT BasicRenderedStringParser : public RenderedStringParser | |||
{ | { | |||
public: | public: | |||
// Strings for supported tags | ||||
static const String ColourTagName; | ||||
static const String FontTagName; | ||||
static const String ImageTagName; | ||||
static const String WindowTagName; | ||||
static const String VertAlignmentTagName; | ||||
static const String PaddingTagName; | ||||
static const String TopPaddingTagName; | ||||
static const String BottomPaddingTagName; | ||||
static const String LeftPaddingTagName; | ||||
static const String RightPaddingTagName; | ||||
static const String AspectLockTagName; | ||||
static const String ImageSizeTagName; | ||||
static const String ImageWidthTagName; | ||||
static const String ImageHeightTagName; | ||||
static const String TopAlignedValueName; | ||||
static const String BottomAlignedValueName; | ||||
static const String CentreAlignedValueName; | ||||
static const String StretchAlignedValueName; | ||||
//! Constructor. | //! Constructor. | |||
BasicRenderedStringParser(); | BasicRenderedStringParser(); | |||
/*! | /*! | |||
\brief | \brief | |||
Initialising constructor. | Initialising constructor. | |||
\param initial_font | \param initial_font | |||
Reference to a String holding the name of the initial font to be us ed. | Reference to a String holding the name of the initial font to be us ed. | |||
\param initial_colours | \param initial_colours | |||
skipping to change at line 110 | skipping to change at line 150 | |||
protected: | protected: | |||
//! append the text string \a text to the RenderedString \a rs. | //! append the text string \a text to the RenderedString \a rs. | |||
virtual void appendRenderedText(RenderedString& rs, const String& text) const; | virtual void appendRenderedText(RenderedString& rs, const String& text) const; | |||
//! Process the control string \a ctrl_str. | //! Process the control string \a ctrl_str. | |||
virtual void processControlString(RenderedString& rs, const String& ctr l_str); | virtual void processControlString(RenderedString& rs, const String& ctr l_str); | |||
//! initialise the default state | //! initialise the default state | |||
virtual void initialiseDefaultState(); | virtual void initialiseDefaultState(); | |||
//! initialise tag handlers | ||||
void initialiseTagHandlers(); | ||||
//! handlers for the various tags supported | ||||
void handleColour(RenderedString& rs, const String& value); | ||||
void handleFont(RenderedString& rs, const String& value); | ||||
void handleImage(RenderedString& rs, const String& value); | ||||
void handleWindow(RenderedString& rs, const String& value); | ||||
void handleVertAlignment(RenderedString& rs, const String& value); | ||||
void handlePadding(RenderedString& rs, const String& value); | ||||
void handleTopPadding(RenderedString& rs, const String& value); | ||||
void handleBottomPadding(RenderedString& rs, const String& value); | ||||
void handleLeftPadding(RenderedString& rs, const String& value); | ||||
void handleRightPadding(RenderedString& rs, const String& value); | ||||
void handleAspectLock(RenderedString& rs, const String& value); | ||||
void handleImageSize(RenderedString& rs, const String& value); | ||||
void handleImageWidth(RenderedString& rs, const String& value); | ||||
void handleImageHeight(RenderedString& rs, const String& value); | ||||
//! initial font name | //! initial font name | |||
String d_initialFontName; | String d_initialFontName; | |||
//! initial colours | //! initial colours | |||
ColourRect d_initialColours; | ColourRect d_initialColours; | |||
//! active padding values. | //! active padding values. | |||
Rect d_padding; | Rect d_padding; | |||
//! active colour values. | //! active colour values. | |||
ColourRect d_colours; | ColourRect d_colours; | |||
//! active font. | //! active font. | |||
String d_fontName; | String d_fontName; | |||
//! active vertical alignment | ||||
VerticalFormatting d_vertAlignment; | ||||
//! active image size | ||||
Size d_imageSize; | ||||
//! active 'aspect lock' state | ||||
bool d_aspectLock; | ||||
//! true if handlers have been registered | ||||
bool d_initialised; | ||||
//! definition of type used for handler functions | ||||
typedef void (BasicRenderedStringParser::*TagHandler)(RenderedString&, | ||||
const String&); | ||||
//! definition of type used to despatch tag handler functions | ||||
typedef std::map<String, TagHandler, String::FastLessCompare> TagHandle | ||||
rMap; | ||||
//! Collection to map tag names to their handler functions. | ||||
TagHandlerMap d_tagHandlers; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#if defined(_MSC_VER) | ||||
# pragma warning(pop) | ||||
#endif | ||||
#endif // end of guard _CEGUIBasicRenderedStringParser_h_ | #endif // end of guard _CEGUIBasicRenderedStringParser_h_ | |||
End of changes. 7 change blocks. | ||||
3 lines changed or deleted | 82 lines changed or added | |||
CEGUIDragContainer.h | CEGUIDragContainer.h | |||
---|---|---|---|---|
skipping to change at line 268 | skipping to change at line 268 | |||
/*! | /*! | |||
\brief | \brief | |||
Enable or disable sticky mode. | Enable or disable sticky mode. | |||
\param setting | \param setting | |||
- true to enable sticky mode. | - true to enable sticky mode. | |||
- false to disable sticky mode. | - false to disable sticky mode. | |||
*/ | */ | |||
void setStickyModeEnabled(bool setting); | void setStickyModeEnabled(bool setting); | |||
/*! | ||||
\brief | ||||
Immediately pick up the DragContainer and optionally set the st | ||||
icky | ||||
mode in order to allow this to happen. Any current interaction | ||||
(i.e. mouse capture) will be interrupted. | ||||
\param force_sticky | ||||
- true to automatically enable the sticky mode in order to | ||||
facilitate picking up the DragContainer. | ||||
- false to ignore the pick up request if the sticky mode is not | ||||
alraedy enabled (default). | ||||
\return | ||||
- true if the DragContainer was successfully picked up. | ||||
- false if the DragContainer was not picked up. | ||||
*/ | ||||
bool pickUp(const bool force_sticky = false); | ||||
/*! | ||||
\brief | ||||
Set the fixed mouse cursor dragging offset to be used for this | ||||
DragContainer. | ||||
\param offset | ||||
UVector2 describing the fixed offset to be used when dragging t | ||||
his | ||||
DragContainer. | ||||
\note | ||||
This offset is only used if it's use is enabled via the | ||||
setUsingFixedDragOffset function. | ||||
*/ | ||||
void setFixedDragOffset(const UVector2& offset); | ||||
/*! | ||||
\brief | ||||
Return the fixed mouse cursor dragging offset to be used for th | ||||
is | ||||
DragContainer. | ||||
\return | ||||
UVector2 describing the fixed offset used when dragging this | ||||
DragContainer. | ||||
\note | ||||
This offset is only used if it's use is enabled via the | ||||
setUsingFixedDragOffset function. | ||||
*/ | ||||
const UVector2& getFixedDragOffset() const; | ||||
/*! | ||||
\brief | ||||
Set whether the fixed dragging offset - as set with the | ||||
setFixedDragOffset - function will be used, or whether the buil | ||||
t-in | ||||
positioning will be used. | ||||
\param enable | ||||
- true to enabled the use of the fixed offset. | ||||
- false to use the regular logic. | ||||
*/ | ||||
void setUsingFixedDragOffset(const bool enable); | ||||
/*! | ||||
\brief | ||||
Return whether the fixed dragging offset - as set with the | ||||
setFixedDragOffset function - will be used, or whether the buil | ||||
t-in | ||||
positioning will be used. | ||||
\param enable | ||||
- true to enabled the use of the fixed offset. | ||||
- false to use the regular logic. | ||||
*/ | ||||
bool isUsingFixedDragOffset() const; | ||||
// Window class overrides. | // Window class overrides. | |||
void getRenderingContext_impl(RenderingContext& ctx) const; | void getRenderingContext_impl(RenderingContext& ctx) const; | |||
protected: | protected: | |||
/****************************************************************** ******* | /****************************************************************** ******* | |||
Protected Implementation Methods | Protected Implementation Methods | |||
******************************************************************* ******/ | ******************************************************************* ******/ | |||
/*! | /*! | |||
\brief | \brief | |||
Return whether the required minimum movement threshold before i nitiating dragging | Return whether the required minimum movement threshold before i nitiating dragging | |||
skipping to change at line 462 | skipping to change at line 534 | |||
float d_dragAlpha; //!< Alpha value to set when dragging. | float d_dragAlpha; //!< Alpha value to set when dragging. | |||
float d_storedAlpha; //!< Alpha value to re-set when draggin g ends. | float d_storedAlpha; //!< Alpha value to re-set when draggin g ends. | |||
bool d_storedClipState; //!< Parent clip state to re-set. | bool d_storedClipState; //!< Parent clip state to re-set. | |||
Window* d_dropTarget; //!< Target window for possible drop op eration. | Window* d_dropTarget; //!< Target window for possible drop op eration. | |||
const Image* d_dragCursorImage; //!< Image to use for mouse cursor when dragging. | const Image* d_dragCursorImage; //!< Image to use for mouse cursor when dragging. | |||
bool d_dropflag; //!< True when we're being dropped | bool d_dropflag; //!< True when we're being dropped | |||
//! true when we're in 'sticky' mode. | //! true when we're in 'sticky' mode. | |||
bool d_stickyMode; | bool d_stickyMode; | |||
//! true after been picked-up / dragged via sticky mode | //! true after been picked-up / dragged via sticky mode | |||
bool d_pickedUp; | bool d_pickedUp; | |||
//! true if fixed mouse offset is used for dragging position. | ||||
bool d_usingFixedDragOffset; | ||||
//! current fixed mouse offset value. | ||||
UVector2 d_fixedDragOffset; | ||||
private: | private: | |||
/****************************************************************** ******* | /****************************************************************** ******* | |||
Static properties for the Spinner widget | Static properties for the Spinner widget | |||
******************************************************************* ******/ | ******************************************************************* ******/ | |||
static DragContainerProperties::DragAlpha d_dragAlphaProperty ; | static DragContainerProperties::DragAlpha d_dragAlphaProperty ; | |||
static DragContainerProperties::DragCursorImage d_dragCursorImagePr operty; | static DragContainerProperties::DragCursorImage d_dragCursorImagePr operty; | |||
static DragContainerProperties::DraggingEnabled d_dragEnabledProper ty; | static DragContainerProperties::DraggingEnabled d_dragEnabledProper ty; | |||
static DragContainerProperties::DragThreshold d_dragThresholdProp erty; | static DragContainerProperties::DragThreshold d_dragThresholdProp erty; | |||
static DragContainerProperties::StickyMode d_stickyModePropert y; | static DragContainerProperties::StickyMode d_stickyModePropert y; | |||
static DragContainerProperties::FixedDragOffset d_fixedDragOffsetPr | ||||
operty; | ||||
static DragContainerProperties::UseFixedDragOffset d_useFixedDragOf | ||||
fsetProperty; | ||||
/****************************************************************** ******* | /****************************************************************** ******* | |||
Implementation methods | Implementation methods | |||
******************************************************************* ******/ | ******************************************************************* ******/ | |||
/*! | /*! | |||
\brief | \brief | |||
Adds properties specific to the DragContainer base class. | Adds properties specific to the DragContainer base class. | |||
\return | \return | |||
Nothing. | Nothing. | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 85 lines changed or added | |||
CEGUIDragContainerProperties.h | CEGUIDragContainerProperties.h | |||
---|---|---|---|---|
skipping to change at line 165 | skipping to change at line 165 | |||
"StickyMode", | "StickyMode", | |||
"Property to get/set the state of the sticky mode setting for t he " | "Property to get/set the state of the sticky mode setting for t he " | |||
"DragContainer. Value is either \"True\" or \"False\".", | "DragContainer. Value is either \"True\" or \"False\".", | |||
"True") | "True") | |||
{} | {} | |||
String get(const PropertyReceiver* receiver) const; | String get(const PropertyReceiver* receiver) const; | |||
void set(PropertyReceiver* receiver, const String& value); | void set(PropertyReceiver* receiver, const String& value); | |||
}; | }; | |||
/*! | ||||
\brief | ||||
Property to access the state of the fixed dragging offset setting. | ||||
\par Usage: | ||||
- Name: FixedDragOffset | ||||
- Format: "{{[xs],[xo]},{[ys],[yo]}}" | ||||
\par Where: | ||||
- [xs] is a floating point value describing the relative | ||||
scale | ||||
value for the position x-coordinate. | ||||
- [xo] is a floating point value describing the absolute | ||||
offset | ||||
value for the position x-coordinate. | ||||
- [ys] is a floating point value describing the relative | ||||
scale | ||||
value for the position y-coordinate. | ||||
- [yo] is a floating point value describing the absolute | ||||
offset | ||||
value for the position y-coordinate. | ||||
*/ | ||||
class FixedDragOffset : public Property | ||||
{ | ||||
public: | ||||
FixedDragOffset() : Property( | ||||
"FixedDragOffset", | ||||
"Property to get/set the state of the fixed dragging offset " | ||||
"setting for the DragContainer. " | ||||
"Value is a UVector2 property value.", | ||||
"{{0,0},{0,0}}") | ||||
{} | ||||
String get(const PropertyReceiver* receiver) const; | ||||
void set(PropertyReceiver* receiver, const String& value); | ||||
}; | ||||
/*! | ||||
\brief | ||||
Property to access the setting that controls whether the fixed drag | ||||
offset will be used. | ||||
\par Usage: | ||||
- Name: UseFixedDragOffset | ||||
- Format: "[text]". | ||||
\par Where [Text] is: | ||||
- "True" to indicate that the fixed dragging offset will be use | ||||
d. | ||||
- "False" to indicate that the fixed dragging offset will not b | ||||
e | ||||
used. | ||||
*/ | ||||
class UseFixedDragOffset : public Property | ||||
{ | ||||
public: | ||||
UseFixedDragOffset() : Property( | ||||
"UseFixedDragOffset", | ||||
"Property to get/set the setting that control whether the fixed | ||||
" | ||||
"dragging offset will be used. " | ||||
"Value is either \"True\" or \"False\".", | ||||
"False") | ||||
{} | ||||
String get(const PropertyReceiver* receiver) const; | ||||
void set(PropertyReceiver* receiver, const String& value); | ||||
}; | ||||
} // End of DragContainerProperties namespace section | } // End of DragContainerProperties namespace section | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _CEGUIDragContainerProperties_h_ | #endif // end of guard _CEGUIDragContainerProperties_h_ | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 69 lines changed or added | |||
CEGUIFrameWindow.h | CEGUIFrameWindow.h | |||
---|---|---|---|---|
skipping to change at line 61 | skipping to change at line 61 | |||
public: | public: | |||
static const String EventNamespace; //!< Namespace for global events | static const String EventNamespace; //!< Namespace for global events | |||
static const String WidgetTypeName; //!< Window factory nam e | static const String WidgetTypeName; //!< Window factory nam e | |||
/******************************************************************* ****** | /******************************************************************* ****** | |||
Constants | Constants | |||
******************************************************************** *****/ | ******************************************************************** *****/ | |||
// additional event names for this window | // additional event names for this window | |||
static const String EventRollupToggled; //!< Fired when the rollup (shade) state of the window changes | static const String EventRollupToggled; //!< Fired when the rollup (shade) state of the window changes | |||
static const String EventCloseClicked; //!< Fired when the close button for the window is clicked. | static const String EventCloseClicked; //!< Fired when the close button for the window is clicked. | |||
//! Fired when drag-sizing of the window starts. | ||||
static const String EventDragSizingStarted; | ||||
//! Fired when drag-sizing of the window ends. | ||||
static const String EventDragSizingEnded; | ||||
// other bits | // other bits | |||
static const float DefaultSizingBorderSize; //!< Default size for the sizing border (in pixels) | static const float DefaultSizingBorderSize; //!< Default size for the sizing border (in pixels) | |||
/********************************************************************** *** | /********************************************************************** *** | |||
Child Widget name suffix constants | Child Widget name suffix constants | |||
*********************************************************************** **/ | *********************************************************************** **/ | |||
static const String TitlebarNameSuffix; //!< Widget name suffix fo r the titlebar component. | static const String TitlebarNameSuffix; //!< Widget name suffix fo r the titlebar component. | |||
static const String CloseButtonNameSuffix; //!< Widget name suffix fo r the close button component. | static const String CloseButtonNameSuffix; //!< Widget name suffix fo r the close button component. | |||
skipping to change at line 489 | skipping to change at line 493 | |||
/******************************************************************* ****** | /******************************************************************* ****** | |||
Implementation Functions | Implementation Functions | |||
******************************************************************** *****/ | ******************************************************************** *****/ | |||
/*! | /*! | |||
\brief | \brief | |||
move the window's left edge by 'delta'. The rest of the win dow does not move, thus this changes the size of the Window. | move the window's left edge by 'delta'. The rest of the win dow does not move, thus this changes the size of the Window. | |||
\param delta | \param delta | |||
float value that specifies the amount to move the window edg e, and in which direction. Positive values make window smaller. | float value that specifies the amount to move the window edg e, and in which direction. Positive values make window smaller. | |||
*/ | */ | |||
void moveLeftEdge(float delta); | bool moveLeftEdge(float delta, URect& out_area); | |||
/*! | /*! | |||
\brief | \brief | |||
move the window's right edge by 'delta'. The rest of the wi ndow does not move, thus this changes the size of the Window. | move the window's right edge by 'delta'. The rest of the wi ndow does not move, thus this changes the size of the Window. | |||
\param delta | \param delta | |||
float value that specifies the amount to move the window edg e, and in which direction. Positive values make window larger. | float value that specifies the amount to move the window edg e, and in which direction. Positive values make window larger. | |||
*/ | */ | |||
void moveRightEdge(float delta); | bool moveRightEdge(float delta, URect& out_area); | |||
/*! | /*! | |||
\brief | \brief | |||
move the window's top edge by 'delta'. The rest of the wind ow does not move, thus this changes the size of the Window. | move the window's top edge by 'delta'. The rest of the wind ow does not move, thus this changes the size of the Window. | |||
\param delta | \param delta | |||
float value that specifies the amount to move the window edg e, and in which direction. Positive values make window smaller. | float value that specifies the amount to move the window edg e, and in which direction. Positive values make window smaller. | |||
*/ | */ | |||
void moveTopEdge(float delta); | bool moveTopEdge(float delta, URect& out_area); | |||
/*! | /*! | |||
\brief | \brief | |||
move the window's bottom edge by 'delta'. The rest of the w indow does not move, thus this changes the size of the Window. | move the window's bottom edge by 'delta'. The rest of the w indow does not move, thus this changes the size of the Window. | |||
\param delta | \param delta | |||
float value that specifies the amount to move the window edg e, and in which direction. Positive values make window larger. | float value that specifies the amount to move the window edg e, and in which direction. Positive values make window larger. | |||
*/ | */ | |||
void moveBottomEdge(float delta); | bool moveBottomEdge(float delta, URect& out_area); | |||
/*! | /*! | |||
\brief | \brief | |||
check local pixel co-ordinate point 'pt' and return one of t he | check local pixel co-ordinate point 'pt' and return one of t he | |||
SizingLocation enumerated values depending where the point f alls on | SizingLocation enumerated values depending where the point f alls on | |||
the sizing border. | the sizing border. | |||
\param pt | \param pt | |||
Point object describing, in pixels, the window relative offs et to check. | Point object describing, in pixels, the window relative offs et to check. | |||
skipping to change at line 631 | skipping to change at line 635 | |||
changes. | changes. | |||
*/ | */ | |||
virtual void onRollupToggled(WindowEventArgs& e); | virtual void onRollupToggled(WindowEventArgs& e); | |||
/*! | /*! | |||
\brief | \brief | |||
Event generated internally whenever the close button is clic ked. | Event generated internally whenever the close button is clic ked. | |||
*/ | */ | |||
virtual void onCloseClicked(WindowEventArgs& e); | virtual void onCloseClicked(WindowEventArgs& e); | |||
//! Handler called when drag-sizing of the FrameWindow starts. | ||||
virtual void onDragSizingStarted(WindowEventArgs& e); | ||||
//! Handler called when drag-sizing of the FrameWindow ends. | ||||
virtual void onDragSizingEnded(WindowEventArgs& e); | ||||
/******************************************************************* ****** | /******************************************************************* ****** | |||
Overridden event handlers | Overridden event handlers | |||
******************************************************************** *****/ | ******************************************************************** *****/ | |||
virtual void onMouseMove(MouseEventArgs& e); | virtual void onMouseMove(MouseEventArgs& e); | |||
virtual void onMouseButtonDown(MouseEventArgs& e); | virtual void onMouseButtonDown(MouseEventArgs& e); | |||
virtual void onMouseButtonUp(MouseEventArgs& e); | virtual void onMouseButtonUp(MouseEventArgs& e); | |||
virtual void onCaptureLost(WindowEventArgs& e); | virtual void onCaptureLost(WindowEventArgs& e); | |||
virtual void onTextChanged(WindowEventArgs& e); | virtual void onTextChanged(WindowEventArgs& e); | |||
virtual void onActivated(ActivationEventArgs& e); | virtual void onActivated(ActivationEventArgs& e); | |||
virtual void onDeactivated(ActivationEventArgs& e); | virtual void onDeactivated(ActivationEventArgs& e); | |||
End of changes. 6 change blocks. | ||||
4 lines changed or deleted | 14 lines changed or added | |||
CEGUIGUISheet.h | CEGUIGUISheet.h | |||
---|---|---|---|---|
skipping to change at line 94 | skipping to change at line 94 | |||
*/ | */ | |||
virtual bool testClassName_impl(const String& class_name) const | virtual bool testClassName_impl(const String& class_name) const | |||
{ | { | |||
if (class_name=="DefaultWindow" || class_name=="GUISheet") return true; | if (class_name=="DefaultWindow" || class_name=="GUISheet") return true; | |||
return Window::testClassName_impl(class_name); | return Window::testClassName_impl(class_name); | |||
} | } | |||
//! helper to update mouse input handled state | //! helper to update mouse input handled state | |||
void updateMouseEventHandled(MouseEventArgs& e) const; | void updateMouseEventHandled(MouseEventArgs& e) const; | |||
// overridden functions from Window base class | ||||
bool moveToFront_impl(bool wasClicked); | ||||
// override the mouse event handlers | // override the mouse event handlers | |||
void onMouseMove(MouseEventArgs& e); | void onMouseMove(MouseEventArgs& e); | |||
void onMouseWheel(MouseEventArgs& e); | void onMouseWheel(MouseEventArgs& e); | |||
void onMouseButtonDown(MouseEventArgs& e); | void onMouseButtonDown(MouseEventArgs& e); | |||
void onMouseButtonUp(MouseEventArgs& e); | void onMouseButtonUp(MouseEventArgs& e); | |||
void onMouseClicked(MouseEventArgs& e); | ||||
void onMouseDoubleClicked(MouseEventArgs& e); | ||||
void onMouseTripleClicked(MouseEventArgs& e); | ||||
}; | }; | |||
/*! | /*! | |||
\brief | \brief | |||
typedef for DefaultWindow, which is the new name for GUISheet. | typedef for DefaultWindow, which is the new name for GUISheet. | |||
*/ | */ | |||
typedef GUISheet DefaultWindow; | typedef GUISheet DefaultWindow; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 6 lines changed or added | |||
CEGUIGroupBox.h | CEGUIGroupBox.h | |||
---|---|---|---|---|
/************************************************************************ | /************************************************************************ | |||
filename: CEGUIGroupBox.h | filename: CEGUIGroupBox.h | |||
created: 03/23/2007 | created: 03/23/2007 | |||
author: Lars 'Levia' Wesselius (Content Pane based on Tomas Lindquist Olsen's code) | author: Lars 'Levia' Wesselius (Content Pane based on Tomas Lindquist Olsen's code) | |||
purpose: Interface for the GroupBox widget | purpose: Interface for the GroupBox widget | |||
*************************************************************************/ | *************************************************************************/ | |||
/************************************************************************* | /************************************************************************** | |||
Crazy Eddie's GUI System (http://www.cegui.org.uk) | * | |||
Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk) | * Copyright (C) 2004 - 2006 Paul D Turner & The CEGUI Development Team | |||
* | ||||
This library is free software; you can redistribute it and/or | * Permission is hereby granted, free of charge, to any person obtaining | |||
modify it under the terms of the GNU Lesser General Public | * a copy of this software and associated documentation files (the | |||
License as published by the Free Software Foundation; either | * "Software"), to deal in the Software without restriction, including | |||
version 2.1 of the License, or (at your option) any later version. | * without limitation the rights to use, copy, modify, merge, publish, | |||
* distribute, sublicense, and/or sell copies of the Software, and to | ||||
This library is distributed in the hope that it will be useful, | * permit persons to whom the Software is furnished to do so, subject to | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | * the following conditions: | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | * | |||
Lesser General Public License for more details. | * The above copyright notice and this permission notice shall be | |||
* included in all copies or substantial portions of the Software. | ||||
You should have received a copy of the GNU Lesser General Public | * | |||
License along with this library; if not, write to the Free Software | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |||
USA | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |||
*************************************************************************/ | * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||||
* OTHER DEALINGS IN THE SOFTWARE. | ||||
************************************************************************** | ||||
*/ | ||||
#ifndef _CEGUIGroupBox_h_ | #ifndef _CEGUIGroupBox_h_ | |||
#define _CEGUIGroupBox_h_ | #define _CEGUIGroupBox_h_ | |||
#include "../CEGUIBase.h" | #include "../CEGUIBase.h" | |||
#include "../CEGUIWindowFactory.h" | #include "../CEGUIWindowFactory.h" | |||
#include "CEGUIClippedContainer.h" | #include "CEGUIClippedContainer.h" | |||
#include <vector> | #include <vector> | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(push) | # pragma warning(push) | |||
End of changes. 1 change blocks. | ||||
19 lines changed or deleted | 24 lines changed or added | |||
CEGUIMultiLineEditbox.h | CEGUIMultiLineEditbox.h | |||
---|---|---|---|---|
skipping to change at line 70 | skipping to change at line 70 | |||
/*! | /*! | |||
\brief | \brief | |||
Return a Rect object describing, in un-clipped pixels, the window r elative area | Return a Rect object describing, in un-clipped pixels, the window r elative area | |||
that the text should be rendered in to. | that the text should be rendered in to. | |||
\return | \return | |||
Rect object describing the area of the Window to be used for render ing text. | Rect object describing the area of the Window to be used for render ing text. | |||
*/ | */ | |||
virtual Rect getTextRenderArea(void) const = 0; | virtual Rect getTextRenderArea(void) const = 0; | |||
protected: | ||||
// base class overrides | ||||
void onLookNFeelAssigned(); | ||||
}; | }; | |||
/*! | /*! | |||
\brief | \brief | |||
Base class for the multi-line edit box widget. | Base class for the multi-line edit box widget. | |||
*/ | */ | |||
class CEGUIEXPORT MultiLineEditbox : public Window | class CEGUIEXPORT MultiLineEditbox : public Window | |||
{ | { | |||
public: | public: | |||
static const String EventNamespace; //!< Namespace for global events | static const String EventNamespace; //!< Namespace for global events | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 4 lines changed or added | |||
CEGUIOpenGLFBOTextureTarget.h | CEGUIOpenGLFBOTextureTarget.h | |||
---|---|---|---|---|
skipping to change at line 31 | skipping to change at line 31 | |||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |||
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | |||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | |||
* OTHER DEALINGS IN THE SOFTWARE. | * OTHER DEALINGS IN THE SOFTWARE. | |||
************************************************************************** */ | ************************************************************************** */ | |||
#ifndef _CEGUIOpenGLFBOTextureTarget_h_ | #ifndef _CEGUIOpenGLFBOTextureTarget_h_ | |||
#define _CEGUIOpenGLFBOTextureTarget_h_ | #define _CEGUIOpenGLFBOTextureTarget_h_ | |||
#include "CEGUIOpenGLRenderTarget.h" | #include "CEGUIOpenGLTextureTarget.h" | |||
#include "../../CEGUITextureTarget.h" | ||||
#include "../../CEGUIRect.h" | #include "../../CEGUIRect.h" | |||
#include "CEGUIOpenGL.h" | #include "CEGUIOpenGL.h" | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(push) | # pragma warning(push) | |||
# pragma warning(disable : 4250) | # pragma warning(disable : 4250) | |||
#endif | #endif | |||
// Start of CEGUI namespace section | // Start of CEGUI namespace section | |||
namespace CEGUI | namespace CEGUI | |||
{ | { | |||
class OpenGLTexture; | class OpenGLTexture; | |||
//! OpenGLFBOTextureTarget - allows rendering to an OpenGL texture via FBO. | //! OpenGLFBOTextureTarget - allows rendering to an OpenGL texture via FBO. | |||
class OPENGL_GUIRENDERER_API OpenGLFBOTextureTarget : public OpenGLRenderTa | class OPENGL_GUIRENDERER_API OpenGLFBOTextureTarget : public OpenGLTextureT | |||
rget, | arget | |||
public TextureTarget | ||||
{ | { | |||
public: | public: | |||
OpenGLFBOTextureTarget(OpenGLRenderer& owner); | OpenGLFBOTextureTarget(OpenGLRenderer& owner); | |||
virtual ~OpenGLFBOTextureTarget(); | virtual ~OpenGLFBOTextureTarget(); | |||
// overrides from OpenGLRenderTarget | // overrides from OpenGLRenderTarget | |||
void activate(); | void activate(); | |||
void deactivate(); | void deactivate(); | |||
// implementation of RenderTarget interface | ||||
bool isImageryCache() const; | ||||
// implementation of TextureTarget interface | // implementation of TextureTarget interface | |||
void clear(); | void clear(); | |||
Texture& getTexture() const; | ||||
void declareRenderSize(const Size& sz); | void declareRenderSize(const Size& sz); | |||
bool isRenderingInverted() const; | // specialise functions from OpenGLTextureTarget | |||
void grabTexture(); | ||||
void restoreTexture(); | ||||
protected: | protected: | |||
//! default size of created texture objects | //! default size of created texture objects | |||
static const float DEFAULT_SIZE; | static const float DEFAULT_SIZE; | |||
//! allocate and set up the texture used with the FBO. | //! allocate and set up the texture used with the FBO. | |||
void initialiseRenderTexture(); | void initialiseRenderTexture(); | |||
//! resize the texture | //! resize the texture | |||
void resizeRenderTexture(); | void resizeRenderTexture(); | |||
//! Frame buffer object. | //! Frame buffer object. | |||
GLuint d_frameBuffer; | GLuint d_frameBuffer; | |||
//! Associated OpenGL texture ID | ||||
GLuint d_texture; | ||||
//! we use this to wrap d_texture so it can be used by the core CEGUI l | ||||
ib. | ||||
OpenGLTexture* d_CEGUITexture; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(pop) | # pragma warning(pop) | |||
#endif | #endif | |||
#endif // end of guard _CEGUIOpenGLFBOTextureTarget_h_ | #endif // end of guard _CEGUIOpenGLFBOTextureTarget_h_ | |||
End of changes. 6 change blocks. | ||||
14 lines changed or deleted | 6 lines changed or added | |||
CEGUIOpenGLGLXPBTextureTarget.h | CEGUIOpenGLGLXPBTextureTarget.h | |||
---|---|---|---|---|
skipping to change at line 33 | skipping to change at line 33 | |||
* IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | |||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | |||
* OTHER DEALINGS IN THE SOFTWARE. | * OTHER DEALINGS IN THE SOFTWARE. | |||
************************************************************************** */ | ************************************************************************** */ | |||
#ifndef _CEGUIOpenGLGLXPBTextureTarget_h_ | #ifndef _CEGUIOpenGLGLXPBTextureTarget_h_ | |||
#define _CEGUIOpenGLGLXPBTextureTarget_h_ | #define _CEGUIOpenGLGLXPBTextureTarget_h_ | |||
#include <GL/glxew.h> | #include <GL/glxew.h> | |||
#include "CEGUIOpenGLRenderTarget.h" | #include "CEGUIOpenGLTextureTarget.h" | |||
#include "../../CEGUITextureTarget.h" | ||||
#include "../../CEGUIRect.h" | #include "../../CEGUIRect.h" | |||
// Start of CEGUI namespace section | // Start of CEGUI namespace section | |||
namespace CEGUI | namespace CEGUI | |||
{ | { | |||
class OpenGLTexture; | class OpenGLTexture; | |||
/*! | /*! | |||
\brief | \brief | |||
OpenGLGLXPBTextureTarget - allows rendering to an OpenGL texture via th e | OpenGLGLXPBTextureTarget - allows rendering to an OpenGL texture via th e | |||
pbuffer provided in GLX 1.3 and above. | pbuffer provided in GLX 1.3 and above. | |||
*/ | */ | |||
class OPENGL_GUIRENDERER_API OpenGLGLXPBTextureTarget : public OpenGLRender | class OPENGL_GUIRENDERER_API OpenGLGLXPBTextureTarget : public OpenGLTextur | |||
Target, | eTarget | |||
public TextureTarge | ||||
t | ||||
{ | { | |||
public: | public: | |||
OpenGLGLXPBTextureTarget(OpenGLRenderer& owner); | OpenGLGLXPBTextureTarget(OpenGLRenderer& owner); | |||
virtual ~OpenGLGLXPBTextureTarget(); | virtual ~OpenGLGLXPBTextureTarget(); | |||
// overrides from OpenGLRenderTarget | // overrides from OpenGLRenderTarget | |||
void activate(); | void activate(); | |||
void deactivate(); | void deactivate(); | |||
// implementation of RenderTarget interface | ||||
bool isImageryCache() const; | ||||
// implementation of TextureTarget interface | // implementation of TextureTarget interface | |||
void clear(); | void clear(); | |||
Texture& getTexture() const; | ||||
void declareRenderSize(const Size& sz); | void declareRenderSize(const Size& sz); | |||
bool isRenderingInverted() const; | // specialise functions from OpenGLTextureTarget | |||
void grabTexture(); | ||||
void restoreTexture(); | ||||
protected: | protected: | |||
//! default size of created texture objects | //! default size of created texture objects | |||
static const float DEFAULT_SIZE; | static const float DEFAULT_SIZE; | |||
//! Initialise the PBuffer with the needed size | //! Initialise the PBuffer with the needed size | |||
void initialisePBuffer(); | void initialisePBuffer(); | |||
//! Switch rendering so it targets the pbuffer | //! Switch rendering so it targets the pbuffer | |||
void enablePBuffer() const; | void enablePBuffer() const; | |||
skipping to change at line 101 | skipping to change at line 98 | |||
//! GLX context | //! GLX context | |||
GLXContext d_context; | GLXContext d_context; | |||
//! The GLX pbuffer we're using. | //! The GLX pbuffer we're using. | |||
GLXPbuffer d_pbuffer; | GLXPbuffer d_pbuffer; | |||
//! stores previous X display when switching to pbuffer | //! stores previous X display when switching to pbuffer | |||
mutable Display* d_prevDisplay; | mutable Display* d_prevDisplay; | |||
//! stores previous GLX drawable when switching to pbuffer | //! stores previous GLX drawable when switching to pbuffer | |||
mutable GLXDrawable d_prevDrawable; | mutable GLXDrawable d_prevDrawable; | |||
//! stores previous GLX context when switching to pbuffer | //! stores previous GLX context when switching to pbuffer | |||
mutable GLXContext d_prevContext; | mutable GLXContext d_prevContext; | |||
//! Associated OpenGL texture ID | ||||
GLuint d_texture; | ||||
//! we use this to wrap d_texture so it can be used by the core CEGUI l | ||||
ib. | ||||
OpenGLTexture* d_CEGUITexture; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _CEGUIOpenGLGLXPBTextureTarget_h_ | #endif // end of guard _CEGUIOpenGLGLXPBTextureTarget_h_ | |||
End of changes. 6 change blocks. | ||||
15 lines changed or deleted | 6 lines changed or added | |||
CEGUIOpenGLRenderer.h | CEGUIOpenGLRenderer.h | |||
---|---|---|---|---|
skipping to change at line 180 | skipping to change at line 180 | |||
*/ | */ | |||
void grabTextures(); | void grabTextures(); | |||
/*! | /*! | |||
\brief | \brief | |||
Restores all the loaded textures from the local data buffers previo usly | Restores all the loaded textures from the local data buffers previo usly | |||
created by 'grabTextures' | created by 'grabTextures' | |||
*/ | */ | |||
void restoreTextures(); | void restoreTextures(); | |||
/*! | ||||
\brief | ||||
Helper to return a valid texture size according to reported OpenGL | ||||
capabilities. | ||||
\param sz | ||||
Size object containing input size. | ||||
\return | ||||
Size object containing - possibly different - output size. | ||||
*/ | ||||
Size getAdjustedTextureSize(const Size& sz) const; | ||||
/*! | ||||
\brief | ||||
Utility function that will return \a f if it's a power of two, or t | ||||
he | ||||
next power of two up from \a f if it's not. | ||||
*/ | ||||
static float getNextPOTSize(const float f); | ||||
private: | private: | |||
/*! | /*! | |||
\brief | \brief | |||
Constructor for OpenGL Renderer objects | Constructor for OpenGL Renderer objects | |||
\param tt_type | \param tt_type | |||
Specifies one of the TextureTargetType enumerated values indicating the | Specifies one of the TextureTargetType enumerated values indicating the | |||
desired TextureTarget type to be used. | desired TextureTarget type to be used. | |||
*/ | */ | |||
OpenGLRenderer(const TextureTargetType tt_type); | OpenGLRenderer(const TextureTargetType tt_type); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 21 lines changed or added | |||
CEGUIOpenGLTexture.h | CEGUIOpenGLTexture.h | |||
---|---|---|---|---|
skipping to change at line 115 | skipping to change at line 115 | |||
protected: | protected: | |||
// Friends (to allow construction and destruction) | // Friends (to allow construction and destruction) | |||
friend Texture& OpenGLRenderer::createTexture(void); | friend Texture& OpenGLRenderer::createTexture(void); | |||
friend Texture& OpenGLRenderer::createTexture(const String&, const Stri ng&); | friend Texture& OpenGLRenderer::createTexture(const String&, const Stri ng&); | |||
friend Texture& OpenGLRenderer::createTexture(const Size&); | friend Texture& OpenGLRenderer::createTexture(const Size&); | |||
friend Texture& OpenGLRenderer::createTexture(GLuint, const Size&); | friend Texture& OpenGLRenderer::createTexture(GLuint, const Size&); | |||
friend void OpenGLRenderer::destroyTexture(Texture&); | friend void OpenGLRenderer::destroyTexture(Texture&); | |||
//! Basic constructor. | //! Basic constructor. | |||
OpenGLTexture(); | OpenGLTexture(OpenGLRenderer& owner); | |||
//! Constructor that creates a Texture from an image file. | //! Constructor that creates a Texture from an image file. | |||
OpenGLTexture(const String& filename, const String& resourceGroup); | OpenGLTexture(OpenGLRenderer& owner, | |||
const String& filename, const String& resourceGroup); | ||||
//! Constructor that creates a Texture with a given size. | //! Constructor that creates a Texture with a given size. | |||
OpenGLTexture(const Size& size); | OpenGLTexture(OpenGLRenderer& owner, const Size& size); | |||
//! Constructor that wraps an existing GL texture. | //! Constructor that wraps an existing GL texture. | |||
OpenGLTexture(GLuint tex, const Size& size); | OpenGLTexture(OpenGLRenderer& owner, GLuint tex, const Size& size); | |||
//! Destructor. | //! Destructor. | |||
virtual ~OpenGLTexture(); | virtual ~OpenGLTexture(); | |||
//! generate the OpenGL texture and set some initial options. | //! generate the OpenGL texture and set some initial options. | |||
void generateOpenGLTexture(); | void generateOpenGLTexture(); | |||
//! updates cached scale value used to map pixels to texture co-ords. | //! updates cached scale value used to map pixels to texture co-ords. | |||
void updateCachedScaleValues(); | void updateCachedScaleValues(); | |||
//! returns next power of 2 size if \a size is not power of 2 | ||||
float getSizeNextPOT(float sz) const; | ||||
//! clean up the GL texture, or the grab buffer if it had been grabbed | //! clean up the GL texture, or the grab buffer if it had been grabbed | |||
void cleanupOpenGLTexture(); | void cleanupOpenGLTexture(); | |||
//! The OpenGL texture we're wrapping. | //! The OpenGL texture we're wrapping. | |||
GLuint d_ogltexture; | GLuint d_ogltexture; | |||
//! Size of the texture. | //! Size of the texture. | |||
Size d_size; | Size d_size; | |||
//! cached image data for restoring the texture. | //! cached image data for restoring the texture. | |||
uint8* d_grabBuffer; | uint8* d_grabBuffer; | |||
//! original pixel of size data loaded into texture | //! original pixel of size data loaded into texture | |||
Size d_dataSize; | Size d_dataSize; | |||
//! cached pixel to texel mapping scale values. | //! cached pixel to texel mapping scale values. | |||
Vector2 d_texelScaling; | Vector2 d_texelScaling; | |||
//! OpenGLRenderer that created and owns this OpenGLTexture | ||||
OpenGLRenderer& d_owner; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _CEGUIOpenGLTexture_h_ | #endif // end of guard _CEGUIOpenGLTexture_h_ | |||
End of changes. 6 change blocks. | ||||
7 lines changed or deleted | 7 lines changed or added | |||
CEGUIRenderedStringComponent.h | CEGUIRenderedStringComponent.h | |||
---|---|---|---|---|
skipping to change at line 73 | skipping to change at line 73 | |||
//! return the current padding value Rect. | //! return the current padding value Rect. | |||
const Rect& getPadding() const; | const Rect& getPadding() const; | |||
//! return the left padding value. | //! return the left padding value. | |||
float getLeftPadding() const; | float getLeftPadding() const; | |||
//! return the right padding value. | //! return the right padding value. | |||
float getRightPadding() const; | float getRightPadding() const; | |||
//! return the top padding value. | //! return the top padding value. | |||
float getTopPadding() const; | float getTopPadding() const; | |||
//! return the bottom padding value. | //! return the bottom padding value. | |||
float getBottomPadding() const; | float getBottomPadding() const; | |||
//! set the aspect-lock state | ||||
void setAspectLock(const bool setting); | ||||
//! return the aspect-lock state | ||||
bool getAspectLock() const; | ||||
//! draw the component. | //! draw the component. | |||
virtual void draw(GeometryBuffer& buffer, const Vector2& position, | virtual void draw(GeometryBuffer& buffer, const Vector2& position, | |||
const ColourRect* mod_colours, | const ColourRect* mod_colours, | |||
const Rect* clip_rect, | const Rect* clip_rect, | |||
const float vertical_space, | const float vertical_space, | |||
const float space_extra) const = 0; | const float space_extra) const = 0; | |||
//! return the pixel size of the rendered component. | //! return the pixel size of the rendered component. | |||
virtual Size getPixelSize() const = 0; | virtual Size getPixelSize() const = 0; | |||
skipping to change at line 114 | skipping to change at line 118 | |||
virtual size_t getSpaceCount() const = 0; | virtual size_t getSpaceCount() const = 0; | |||
protected: | protected: | |||
//! Protected constructor. | //! Protected constructor. | |||
RenderedStringComponent(); | RenderedStringComponent(); | |||
//! Rect object holding the padding values for this component. | //! Rect object holding the padding values for this component. | |||
Rect d_padding; | Rect d_padding; | |||
//! Vertical formatting to be used for this component. | //! Vertical formatting to be used for this component. | |||
VerticalFormatting d_verticalFormatting; | VerticalFormatting d_verticalFormatting; | |||
//! true if the aspect ratio should be maintained where possible. | ||||
bool d_aspectLock; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _CEGUIRenderedStringComponent_h_ | #endif // end of guard _CEGUIRenderedStringComponent_h_ | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 6 lines changed or added | |||
CEGUIRenderedStringImageComponent.h | CEGUIRenderedStringImageComponent.h | |||
---|---|---|---|---|
skipping to change at line 58 | skipping to change at line 58 | |||
//! Set the image to be drawn by this component. | //! Set the image to be drawn by this component. | |||
void setImage(const Image* image); | void setImage(const Image* image); | |||
//! return the current set image that will be drawn by this component | //! return the current set image that will be drawn by this component | |||
const Image* getImage() const; | const Image* getImage() const; | |||
//! Set the colour values used when rendering this component. | //! Set the colour values used when rendering this component. | |||
void setColours(const ColourRect& cr); | void setColours(const ColourRect& cr); | |||
//! Set the colour values used when rendering this component. | //! Set the colour values used when rendering this component. | |||
void setColours(const colour& c); | void setColours(const colour& c); | |||
//! return the ColourRect object used when drawing this component. | //! return the ColourRect object used when drawing this component. | |||
const ColourRect& getColours() const; | const ColourRect& getColours() const; | |||
//! set the size for rendering the image (0s mean 'normal' size) | ||||
void setSize(const Size& sz); | ||||
//! return the size for rendering the image (0s mean 'normal' size) | ||||
const Size& getSize() const; | ||||
// implementation of abstract base interface | // implementation of abstract base interface | |||
void draw(GeometryBuffer& buffer, const Vector2& position, | void draw(GeometryBuffer& buffer, const Vector2& position, | |||
const ColourRect* mod_colours, const Rect* clip_rect, | const ColourRect* mod_colours, const Rect* clip_rect, | |||
const float vertical_space, const float space_extra) const; | const float vertical_space, const float space_extra) const; | |||
Size getPixelSize() const; | Size getPixelSize() const; | |||
bool canSplit() const; | bool canSplit() const; | |||
RenderedStringImageComponent* split(float split_point, bool first_compo nent); | RenderedStringImageComponent* split(float split_point, bool first_compo nent); | |||
RenderedStringImageComponent* clone() const; | RenderedStringImageComponent* clone() const; | |||
size_t getSpaceCount() const; | size_t getSpaceCount() const; | |||
protected: | protected: | |||
//! pointer to the image drawn by the component. | //! pointer to the image drawn by the component. | |||
const Image* d_image; | const Image* d_image; | |||
//! ColourRect object describing the colours to use when rendering. | //! ColourRect object describing the colours to use when rendering. | |||
ColourRect d_colours; | ColourRect d_colours; | |||
//! target size to render the image at (0s mean natural size) | ||||
Size d_size; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _CEGUIRenderedStringImageComponent_h_ | #endif // end of guard _CEGUIRenderedStringImageComponent_h_ | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 6 lines changed or added | |||
CEGUIScrolledContainer.h | CEGUIScrolledContainer.h | |||
---|---|---|---|---|
skipping to change at line 185 | skipping to change at line 185 | |||
*/ | */ | |||
virtual void onAutoSizeSettingChanged(WindowEventArgs& e); | virtual void onAutoSizeSettingChanged(WindowEventArgs& e); | |||
//! handles notifications about child windows being moved. | //! handles notifications about child windows being moved. | |||
bool handleChildSized(const EventArgs& e); | bool handleChildSized(const EventArgs& e); | |||
//! handles notifications about child windows being sized. | //! handles notifications about child windows being sized. | |||
bool handleChildMoved(const EventArgs& e); | bool handleChildMoved(const EventArgs& e); | |||
// overridden from Window. | // overridden from Window. | |||
void drawSelf(const RenderingContext&) {}; | void drawSelf(const RenderingContext&) {}; | |||
Rect getInnerRectClipper_impl() const; | ||||
Rect getHitTestRect_impl() const; | ||||
void onChildAdded(WindowEventArgs& e); | void onChildAdded(WindowEventArgs& e); | |||
void onChildRemoved(WindowEventArgs& e); | void onChildRemoved(WindowEventArgs& e); | |||
void onParentSized(WindowEventArgs& e); | void onParentSized(WindowEventArgs& e); | |||
//! type definition for collection used to track event connections. | //! type definition for collection used to track event connections. | |||
typedef std::multimap<Window*, Event::Connection> ConnectionTracker; | typedef std::multimap<Window*, Event::Connection> ConnectionTracker; | |||
//! Tracks event connections we make. | //! Tracks event connections we make. | |||
ConnectionTracker d_eventConnections; | ConnectionTracker d_eventConnections; | |||
//! Holds extents of the content pane. | //! Holds extents of the content pane. | |||
Rect d_contentArea; | Rect d_contentArea; | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 2 lines changed or added | |||
CEGUIScrolledItemListBase.h | CEGUIScrolledItemListBase.h | |||
---|---|---|---|---|
/************************************************************************ | /************************************************************************ | |||
filename: CEGUIIScrolledItemListBase.h | filename: CEGUIIScrolledItemListBase.h | |||
created: Sat Oct 29 2005 | created: Sat Oct 29 2005 | |||
author: Tomas Lindquist Olsen | author: Tomas Lindquist Olsen | |||
*************************************************************************/ | *************************************************************************/ | |||
/************************************************************************* | /************************************************************************** | |||
Crazy Eddie's GUI System (http://www.cegui.org.uk) | * | |||
Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk) | * Copyright (C) 2004 - 2009 Paul D Turner & The CEGUI Development Team | |||
* | ||||
This library is free software; you can redistribute it and/or | * Permission is hereby granted, free of charge, to any person obtaining | |||
modify it under the terms of the GNU Lesser General Public | * a copy of this software and associated documentation files (the | |||
License as published by the Free Software Foundation; either | * "Software"), to deal in the Software without restriction, including | |||
version 2.1 of the License, or (at your option) any later version. | * without limitation the rights to use, copy, modify, merge, publish, | |||
* distribute, sublicense, and/or sell copies of the Software, and to | ||||
This library is distributed in the hope that it will be useful, | * permit persons to whom the Software is furnished to do so, subject to | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | * the following conditions: | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | * | |||
Lesser General Public License for more details. | * The above copyright notice and this permission notice shall be | |||
* included in all copies or substantial portions of the Software. | ||||
You should have received a copy of the GNU Lesser General Public | * | |||
License along with this library; if not, write to the Free Software | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 U | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |||
SA | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |||
*************************************************************************/ | * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||||
* OTHER DEALINGS IN THE SOFTWARE. | ||||
************************************************************************** | ||||
*/ | ||||
#ifndef _CEGUIScrolledItemListBase_h_ | #ifndef _CEGUIScrolledItemListBase_h_ | |||
#define _CEGUIScrolledItemListBase_h_ | #define _CEGUIScrolledItemListBase_h_ | |||
#include "CEGUIItemListBase.h" | #include "CEGUIItemListBase.h" | |||
#include "CEGUIScrollbar.h" | #include "CEGUIScrollbar.h" | |||
#include "CEGUIScrolledItemListBaseProperties.h" | #include "CEGUIScrolledItemListBaseProperties.h" | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(push) | # pragma warning(push) | |||
# pragma warning(disable : 4251) | # pragma warning(disable : 4251) | |||
End of changes. 1 change blocks. | ||||
19 lines changed or deleted | 24 lines changed or added | |||
CEGUIScrolledItemListBaseProperties.h | CEGUIScrolledItemListBaseProperties.h | |||
---|---|---|---|---|
/************************************************************************ | /************************************************************************ | |||
filename: CEGUIScrolledItemListBaseProperties.h | filename: CEGUIScrolledItemListBaseProperties.h | |||
created: Tue Nov 1 2005 | created: Tue Nov 1 2005 | |||
author: Tomas Lindquist Olsen | author: Tomas Lindquist Olsen | |||
*************************************************************************/ | *************************************************************************/ | |||
/************************************************************************* | /************************************************************************** | |||
Crazy Eddie's GUI System (http://www.cegui.org.uk) | * | |||
Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk) | * Copyright (C) 2004 - 2009 Paul D Turner & The CEGUI Development Team | |||
* | ||||
This library is free software; you can redistribute it and/or | * Permission is hereby granted, free of charge, to any person obtaining | |||
modify it under the terms of the GNU Lesser General Public | * a copy of this software and associated documentation files (the | |||
License as published by the Free Software Foundation; either | * "Software"), to deal in the Software without restriction, including | |||
version 2.1 of the License, or (at your option) any later version. | * without limitation the rights to use, copy, modify, merge, publish, | |||
* distribute, sublicense, and/or sell copies of the Software, and to | ||||
This library is distributed in the hope that it will be useful, | * permit persons to whom the Software is furnished to do so, subject to | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | * the following conditions: | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | * | |||
Lesser General Public License for more details. | * The above copyright notice and this permission notice shall be | |||
* included in all copies or substantial portions of the Software. | ||||
You should have received a copy of the GNU Lesser General Public | * | |||
License along with this library; if not, write to the Free Software | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 U | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |||
SA | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |||
*************************************************************************/ | * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||||
* OTHER DEALINGS IN THE SOFTWARE. | ||||
************************************************************************** | ||||
*/ | ||||
#ifndef _CEGUIScrolledItemListBaseProperties_h_ | #ifndef _CEGUIScrolledItemListBaseProperties_h_ | |||
#define _CEGUIScrolledItemListBaseProperties_h_ | #define _CEGUIScrolledItemListBaseProperties_h_ | |||
#include "../CEGUIProperty.h" | #include "../CEGUIProperty.h" | |||
// Start of CEGUI namespace section | // Start of CEGUI namespace section | |||
namespace CEGUI | namespace CEGUI | |||
{ | { | |||
// Start of ItemListboxProperties namespace section | // Start of ItemListboxProperties namespace section | |||
End of changes. 1 change blocks. | ||||
19 lines changed or deleted | 24 lines changed or added | |||
CEGUISystem.h | CEGUISystem.h | |||
---|---|---|---|---|
skipping to change at line 83 | skipping to change at line 83 | |||
// event names | // event names | |||
static const String EventGUISheetChanged; //!< Name of event fired whenever the GUI sheet is changed. | static const String EventGUISheetChanged; //!< Name of event fired whenever the GUI sheet is changed. | |||
static const String EventSingleClickTimeoutChanged; //!< Name of event fired when the single-click timeout is changed. | static const String EventSingleClickTimeoutChanged; //!< Name of event fired when the single-click timeout is changed. | |||
static const String EventMultiClickTimeoutChanged; //!< Name of event fired when the multi-click timeout is changed. | static const String EventMultiClickTimeoutChanged; //!< Name of event fired when the multi-click timeout is changed. | |||
static const String EventMultiClickAreaSizeChanged; //!< Name of event fired when the size of the multi-click tolerance area is changed. | static const String EventMultiClickAreaSizeChanged; //!< Name of event fired when the size of the multi-click tolerance area is changed. | |||
static const String EventDefaultFontChanged; //!< Name of event fired when the default font changes. | static const String EventDefaultFontChanged; //!< Name of event fired when the default font changes. | |||
static const String EventDefaultMouseCursorChanged; //!< Name of event fired when the default mouse cursor changes. | static const String EventDefaultMouseCursorChanged; //!< Name of event fired when the default mouse cursor changes. | |||
static const String EventMouseMoveScalingChanged; //!< Name of event fired when the mouse move scaling factor changes. | static const String EventMouseMoveScalingChanged; //!< Name of event fired when the mouse move scaling factor changes. | |||
//! Name of event fired for display size changes (as notified by client ). | //! Name of event fired for display size changes (as notified by client ). | |||
static const String EventDisplaySizeChanged; | static const String EventDisplaySizeChanged; | |||
//! Name of event fired when global custom RenderedStringParser is set. | ||||
static const String EventRenderedStringParserChanged; | ||||
/******************************************************************* ****** | /******************************************************************* ****** | |||
Construction and Destruction | Construction and Destruction | |||
******************************************************************** *****/ | ******************************************************************** *****/ | |||
/*! | /*! | |||
\brief | \brief | |||
Create the System object and return a reference to it. | Create the System object and return a reference to it. | |||
\param renderer | \param renderer | |||
Reference to a valid Renderer object that will be used to render GU I | Reference to a valid Renderer object that will be used to render GU I | |||
skipping to change at line 331 | skipping to change at line 333 | |||
for a multi-click (double click, or triple click) event to b e generated. | for a multi-click (double click, or triple click) event to b e generated. | |||
\param sz | \param sz | |||
Size object describing the multi-click tolerance area size t o be used. | Size object describing the multi-click tolerance area size t o be used. | |||
\return | \return | |||
Nothing. | Nothing. | |||
*/ | */ | |||
void setMultiClickToleranceAreaSize(const Size& sz); | void setMultiClickToleranceAreaSize(const Size& sz); | |||
/*! | ||||
\brief | ||||
Return whether automatic mouse button click and multi-click (i.e. | ||||
double-click and treble-click) event generation is enabled. | ||||
\return | ||||
- true if mouse button click and multi-click events will be | ||||
automatically generated by the system from the basic button up and | ||||
down | ||||
event injections. | ||||
- false if no automatic generation of events will occur. In this | ||||
instance the user may wish to use the additional event injectors to | ||||
manually inform the system of such events. | ||||
*/ | ||||
bool isMouseClickEventGenerationEnabled() const; | ||||
/*! | ||||
\brief | ||||
Set whether automatic mouse button click and multi-click (i.e. | ||||
double-click and treble-click) event generation will occur. | ||||
\param enable | ||||
- true to have mouse button click and multi-click events automatica | ||||
lly | ||||
generated by the system from the basic button up and down event | ||||
injections. | ||||
- false if no automatic generation of events should occur. In this | ||||
instance the user may wish to use the additional event injectors to | ||||
manually inform the system of such events. | ||||
*/ | ||||
void setMouseClickEventGenerationEnabled(const bool enable); | ||||
/*! | /*! | |||
\brief | \brief | |||
Return the currently set default mouse cursor image | Return the currently set default mouse cursor image | |||
\return | \return | |||
Pointer to the current default image used for the mouse curs or. May return NULL if default cursor has not been set, | Pointer to the current default image used for the mouse curs or. May return NULL if default cursor has not been set, | |||
or has intentionally been set to NULL - which results in a b lank default cursor. | or has intentionally been set to NULL - which results in a b lank default cursor. | |||
*/ | */ | |||
const Image* getDefaultMouseCursor(void) const {return d_de faultMouseCursor;} | const Image* getDefaultMouseCursor(void) const {return d_de faultMouseCursor;} | |||
skipping to change at line 727 | skipping to change at line 759 | |||
auto-scale functioning of Imagesets and Fonts. | auto-scale functioning of Imagesets and Fonts. | |||
\note | \note | |||
This function will also fire the System::EventDisplaySizeChanged ev ent. | This function will also fire the System::EventDisplaySizeChanged ev ent. | |||
\param new_size | \param new_size | |||
Size object describing the new display size in pixels. | Size object describing the new display size in pixels. | |||
*/ | */ | |||
void notifyDisplaySizeChanged(const Size& new_size); | void notifyDisplaySizeChanged(const Size& new_size); | |||
/*! | ||||
\brief | ||||
Return pointer to the currently set global default custom | ||||
RenderedStringParser object. | ||||
The returned RenderedStringParser is used for all windows that have | ||||
parsing enabled and no custom RenderedStringParser set on the windo | ||||
w | ||||
itself. | ||||
If this global custom RenderedStringParser is set to 0, then all wi | ||||
ndows | ||||
with parsing enabled and no custom RenderedStringParser set on the | ||||
window itself will use the systems BasicRenderedStringParser. | ||||
*/ | ||||
RenderedStringParser* getDefaultCustomRenderedStringParser() const; | ||||
/*! | ||||
\brief | ||||
Set the global default custom RenderedStringParser object. This ch | ||||
ange | ||||
is reflected the next time an affected window reparses it's text. | ||||
This | ||||
may be set to 0 for no system wide custom parser (which is the defa | ||||
ult). | ||||
The set RenderedStringParser is used for all windows that have | ||||
parsing enabled and no custom RenderedStringParser set on the windo | ||||
w | ||||
itself. | ||||
If this global custom RenderedStringParser is set to 0, then all wi | ||||
ndows | ||||
with parsing enabled and no custom RenderedStringParser set on the | ||||
window itself will use the systems BasicRenderedStringParser. | ||||
*/ | ||||
void setDefaultCustomRenderedStringParser(RenderedStringParser* parser) | ||||
; | ||||
/******************************************************************* ****** | /******************************************************************* ****** | |||
Input injection interface | Input injection interface | |||
******************************************************************** *****/ | ******************************************************************** *****/ | |||
/*! | /*! | |||
\brief | \brief | |||
Method that injects a mouse movement event into the system | Method that injects a mouse movement event into the system | |||
\param delta_x | \param delta_x | |||
amount the mouse moved on the x axis. | amount the mouse moved on the x axis. | |||
skipping to change at line 862 | skipping to change at line 925 | |||
Method to inject time pulses into the system. | Method to inject time pulses into the system. | |||
\param timeElapsed | \param timeElapsed | |||
float value indicating the amount of time passed, in seconds , since the last time this method was called. | float value indicating the amount of time passed, in seconds , since the last time this method was called. | |||
\return | \return | |||
Currently, this method always returns true. | Currently, this method always returns true. | |||
*/ | */ | |||
bool injectTimePulse(float timeElapsed); | bool injectTimePulse(float timeElapsed); | |||
/*! | ||||
\brief | ||||
Function to directly inject a mouse button click event. | ||||
Here 'click' means a mouse button down event followed by a mouse | ||||
button up event. | ||||
\note | ||||
Under normal, default settings, this event is automatically generat | ||||
ed by | ||||
the system from the regular up and down events you inject. You may | ||||
use | ||||
this function directly, though you'll probably want to disable the | ||||
automatic click event generation first by using the | ||||
setMouseClickEventGenerationEnabled function - this setting control | ||||
s the | ||||
auto-generation of events and also determines the default 'handled' | ||||
state of the injected click events according to the rules used for | ||||
mouse up/down events. | ||||
\param button | ||||
One of the MouseButton enumerated values. | ||||
\return | ||||
- true if some window or handler reported that it handled the event | ||||
. | ||||
- false if nobody handled the event. | ||||
*/ | ||||
bool injectMouseButtonClick(const MouseButton button); | ||||
/*! | ||||
\brief | ||||
Function to directly inject a mouse button double-click event. | ||||
Here 'double-click' means a single mouse button had the sequence do | ||||
wn, | ||||
up, down within a predefined period of time. | ||||
\note | ||||
Under normal, default settings, this event is automatically generat | ||||
ed by | ||||
the system from the regular up and down events you inject. You may | ||||
use | ||||
this function directly, though you'll probably want to disable the | ||||
automatic click event generation first by using the | ||||
setMouseClickEventGenerationEnabled function - this setting control | ||||
s the | ||||
auto-generation of events and also determines the default 'handled' | ||||
state of the injected click events according to the rules used for | ||||
mouse up/down events. | ||||
\param button | ||||
One of the MouseButton enumerated values. | ||||
\return | ||||
- true if some window or handler reported that it handled the event | ||||
. | ||||
- false if nobody handled the event. | ||||
*/ | ||||
bool injectMouseButtonDoubleClick(const MouseButton button); | ||||
/*! | ||||
\brief | ||||
Function to directly inject a mouse button triple-click event. | ||||
Here 'triple-click' means a single mouse button had the sequence do | ||||
wn, | ||||
up, down, up, down within a predefined period of time. | ||||
\note | ||||
Under normal, default settings, this event is automatically generat | ||||
ed by | ||||
the system from the regular up and down events you inject. You may | ||||
use | ||||
this function directly, though you'll probably want to disable the | ||||
automatic click event generation first by using the | ||||
setMouseClickEventGenerationEnabled function - this setting control | ||||
s the | ||||
auto-generation of events and also determines the default 'handled' | ||||
state of the injected click events according to the rules used for | ||||
mouse up/down events. | ||||
\param button | ||||
One of the MouseButton enumerated values. | ||||
\return | ||||
- true if some window or handler reported that it handled the event | ||||
. | ||||
- false if nobody handled the event. | ||||
*/ | ||||
bool injectMouseButtonTripleClick(const MouseButton button); | ||||
private: | private: | |||
// unimplemented constructors / assignment | // unimplemented constructors / assignment | |||
System(const System& obj); | System(const System& obj); | |||
System& operator=(const System& obj); | System& operator=(const System& obj); | |||
/******************************************************************* ****** | /******************************************************************* ****** | |||
Implementation Functions | Implementation Functions | |||
******************************************************************** *****/ | ******************************************************************** *****/ | |||
/*! | /*! | |||
\brief | \brief | |||
skipping to change at line 1101 | skipping to change at line 1242 | |||
bool d_ourXmlParser; //!< true when we created the xml parse r. | bool d_ourXmlParser; //!< true when we created the xml parse r. | |||
DynamicModule* d_parserModule; //! pointer to parser module. | DynamicModule* d_parserModule; //! pointer to parser module. | |||
Tooltip* d_defaultTooltip; //!< System default tooltip object. | Tooltip* d_defaultTooltip; //!< System default tooltip object. | |||
bool d_weOwnTooltip; //!< true if System created the custom Tooltip. | bool d_weOwnTooltip; //!< true if System created the custom Tooltip. | |||
static String d_defaultXMLParserName; //!< Holds name of default XMLP arser | static String d_defaultXMLParserName; //!< Holds name of default XMLP arser | |||
//! Holds a pointer to the image codec to use. | //! Holds a pointer to the image codec to use. | |||
ImageCodec* d_imageCodec; | ImageCodec* d_imageCodec; | |||
//! true when we created the image codec. | ||||
bool d_ourImageCodec; | ||||
/** Holds a pointer to the image codec module. If d_imageCodecModule is 0 we | /** Holds a pointer to the image codec module. If d_imageCodecModule is 0 we | |||
* are not owner of the image codec object | * are not owner of the image codec object | |||
*/ | */ | |||
DynamicModule* d_imageCodecModule; | DynamicModule* d_imageCodecModule; | |||
//! Holds the name of the default codec to use. | //! Holds the name of the default codec to use. | |||
static String d_defaultImageCodecName; | static String d_defaultImageCodecName; | |||
//! true when we created the CEGUI::Logger based object. | //! true when we created the CEGUI::Logger based object. | |||
bool d_ourLogger; | bool d_ourLogger; | |||
//! currently set global RenderedStringParser. | ||||
RenderedStringParser* d_customRenderedStringParser; | ||||
//! true if mouse click events will be automatically generated. | ||||
bool d_generateMouseClickEvents; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(pop) | # pragma warning(pop) | |||
#endif | #endif | |||
#endif // end of guard _CEGUISystem_h_ | #endif // end of guard _CEGUISystem_h_ | |||
End of changes. 6 change blocks. | ||||
0 lines changed or deleted | 171 lines changed or added | |||
CEGUIUDim.h | CEGUIUDim.h | |||
---|---|---|---|---|
skipping to change at line 58 | skipping to change at line 58 | |||
public: | public: | |||
UDim() {} | UDim() {} | |||
UDim(float scale, float offset) : d_scale(scale), d_offset(offset) {} | UDim(float scale, float offset) : d_scale(scale), d_offset(offset) {} | |||
~UDim() {} | ~UDim() {} | |||
float asAbsolute(float base) const { return PixelAligned(base * d_scale) + d_offset; } | float asAbsolute(float base) const { return PixelAligned(base * d_scale) + d_offset; } | |||
float asRelative(float base) const { return (base != 0.0f) ? d_o ffset / base + d_scale : 0.0f; } | float asRelative(float base) const { return (base != 0.0f) ? d_o ffset / base + d_scale : 0.0f; } | |||
UDim operator+(const UDim& other) const { return UDim(d_scale + other.d_scale, d_offset + other.d_offset); } | UDim operator+(const UDim& other) const { return UDim(d_scale + other.d_scale, d_offset + other.d_offset); } | |||
UDim operator-(const UDim& other) const { return UDim(d_scale - other.d_scale, d_offset - other.d_offset); } | UDim operator-(const UDim& other) const { return UDim(d_scale - other.d_scale, d_offset - other.d_offset); } | |||
UDim operator/(const UDim& other) const { return UDim(d_scale / other.d_scale, d_offset / other.d_offset); } | ||||
UDim operator*(const UDim& other) const { return UDim(d_scale * other.d_scale, d_offset * other.d_offset); } | UDim operator*(const UDim& other) const { return UDim(d_scale * other.d_scale, d_offset * other.d_offset); } | |||
UDim operator/(const UDim& other) const | ||||
{ | ||||
// division by zero sets component to zero. Not technically co | ||||
rrect | ||||
// but probably better than exceptions and/or NaN values. | ||||
return UDim(other.d_scale == 0.0f ? 0.0f : d_scale / other.d_sc | ||||
ale, | ||||
other.d_offset == 0.0f ? 0.0f : d_offset / other.d_ | ||||
offset); | ||||
} | ||||
const UDim& operator+=(const UDim& other) { d_scale += other.d_sc ale; d_offset += other.d_offset; return *this; } | const UDim& operator+=(const UDim& other) { d_scale += other.d_sc ale; d_offset += other.d_offset; return *this; } | |||
const UDim& operator-=(const UDim& other) { d_scale -= other.d_sc ale; d_offset -= other.d_offset; return *this; } | const UDim& operator-=(const UDim& other) { d_scale -= other.d_sc ale; d_offset -= other.d_offset; return *this; } | |||
const UDim& operator/=(const UDim& other) { d_scale /= other.d_sc ale; d_offset /= other.d_offset; return *this; } | ||||
const UDim& operator*=(const UDim& other) { d_scale *= other.d_sc ale; d_offset *= other.d_offset; return *this; } | const UDim& operator*=(const UDim& other) { d_scale *= other.d_sc ale; d_offset *= other.d_offset; return *this; } | |||
const UDim& operator/=(const UDim& other) | ||||
{ | ||||
// division by zero sets component to zero. Not technically co | ||||
rrect | ||||
// but probably better than exceptions and/or NaN values. | ||||
d_scale = (other.d_scale == 0.0f ? 0.0f : d_scale / other.d_sca | ||||
le); | ||||
d_offset = (other.d_offset == 0.0f ? 0.0f : d_offset / other.d_ | ||||
offset); | ||||
return *this; | ||||
} | ||||
bool operator==(const UDim& other) const { return d_scale == oth er.d_scale && d_offset == other.d_offset; } | bool operator==(const UDim& other) const { return d_scale == oth er.d_scale && d_offset == other.d_offset; } | |||
bool operator!=(const UDim& other) const { return !operator==(ot her); } | bool operator!=(const UDim& other) const { return !operator==(ot her); } | |||
float d_scale, d_offset; | float d_scale, d_offset; | |||
}; | }; | |||
/*! | /*! | |||
\brief | \brief | |||
Two dimensional vector class built using unified dimensions (UDims) . | Two dimensional vector class built using unified dimensions (UDims) . | |||
skipping to change at line 97 | skipping to change at line 110 | |||
UVector2 operator+(const UVector2& other) const { return UVecto r2(d_x + other.d_x, d_y + other.d_y); } | UVector2 operator+(const UVector2& other) const { return UVecto r2(d_x + other.d_x, d_y + other.d_y); } | |||
UVector2 operator-(const UVector2& other) const { return UVecto r2(d_x - other.d_x, d_y - other.d_y); } | UVector2 operator-(const UVector2& other) const { return UVecto r2(d_x - other.d_x, d_y - other.d_y); } | |||
UVector2 operator/(const UVector2& other) const { return UVecto r2(d_x / other.d_x, d_y / other.d_y); } | UVector2 operator/(const UVector2& other) const { return UVecto r2(d_x / other.d_x, d_y / other.d_y); } | |||
UVector2 operator*(const UVector2& other) const { return UVecto r2(d_x * other.d_x, d_y * other.d_y); } | UVector2 operator*(const UVector2& other) const { return UVecto r2(d_x * other.d_x, d_y * other.d_y); } | |||
const UVector2& operator+=(const UVector2& other) { d_x += other. d_x; d_y += other.d_y; return *this; } | const UVector2& operator+=(const UVector2& other) { d_x += other. d_x; d_y += other.d_y; return *this; } | |||
const UVector2& operator-=(const UVector2& other) { d_x -= other. d_x; d_y -= other.d_y; return *this; } | const UVector2& operator-=(const UVector2& other) { d_x -= other. d_x; d_y -= other.d_y; return *this; } | |||
const UVector2& operator/=(const UVector2& other) { d_x /= other. d_x; d_y /= other.d_y; return *this; } | const UVector2& operator/=(const UVector2& other) { d_x /= other. d_x; d_y /= other.d_y; return *this; } | |||
const UVector2& operator*=(const UVector2& other) { d_x *= other. d_x; d_y *= other.d_y; return *this; } | const UVector2& operator*=(const UVector2& other) { d_x *= other. d_x; d_y *= other.d_y; return *this; } | |||
UVector2 operator+(const UDim& dim) const { return UVector2(d_x | ||||
+ dim, d_y + dim); } | ||||
UVector2 operator-(const UDim& dim) const { return UVector2(d_x | ||||
- dim, d_y - dim); } | ||||
UVector2 operator/(const UDim& dim) const { return UVector2(d_x | ||||
/ dim, d_y / dim); } | ||||
UVector2 operator*(const UDim& dim) const { return UVector2(d_x | ||||
* dim, d_y * dim); } | ||||
const UVector2& operator+=(const UDim& dim) { d_x += dim; d_y += | ||||
dim; return *this; } | ||||
const UVector2& operator-=(const UDim& dim) { d_x -= dim; d_y -= | ||||
dim; return *this; } | ||||
const UVector2& operator/=(const UDim& dim) { d_x /= dim; d_y /= | ||||
dim; return *this; } | ||||
const UVector2& operator*=(const UDim& dim) { d_x *= dim; d_y *= | ||||
dim; return *this; } | ||||
bool operator==(const UVector2& other) const { return d_x == oth er.d_x && d_y == other.d_y; } | bool operator==(const UVector2& other) const { return d_x == oth er.d_x && d_y == other.d_y; } | |||
bool operator!=(const UVector2& other) const { return !operator= =(other); } | bool operator!=(const UVector2& other) const { return !operator= =(other); } | |||
UDim d_x, d_y; | UDim d_x, d_y; | |||
}; | }; | |||
/*! | /*! | |||
\brief | \brief | |||
Area rectangle class built using unified dimensions (UDims). | Area rectangle class built using unified dimensions (UDims). | |||
*/ | */ | |||
End of changes. 5 change blocks. | ||||
2 lines changed or deleted | 39 lines changed or added | |||
CEGUIVersion.h | CEGUIVersion.h | |||
---|---|---|---|---|
skipping to change at line 42 | skipping to change at line 42 | |||
*************************************************************************/ | *************************************************************************/ | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef _CEGUIVersion_h_ | #ifndef _CEGUIVersion_h_ | |||
#define _CEGUIVersion_h_ | #define _CEGUIVersion_h_ | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
// Define CEGUI version | // Define CEGUI version | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#define CEGUI_VERSION_MAJOR 0 | #define CEGUI_VERSION_MAJOR 0 | |||
#define CEGUI_VERSION_MINOR 7 | #define CEGUI_VERSION_MINOR 7 | |||
#define CEGUI_VERSION_PATCH 0 | #define CEGUI_VERSION_PATCH 1 | |||
#endif // end of guard _CEGUIVersion_h_ | #endif // end of guard _CEGUIVersion_h_ | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
CEGUIWindow.h | CEGUIWindow.h | |||
---|---|---|---|---|
skipping to change at line 47 | skipping to change at line 47 | |||
#include "CEGUISize.h" | #include "CEGUISize.h" | |||
#include "CEGUIEventSet.h" | #include "CEGUIEventSet.h" | |||
#include "CEGUIPropertySet.h" | #include "CEGUIPropertySet.h" | |||
#include "CEGUISystem.h" | #include "CEGUISystem.h" | |||
#include "CEGUIInputEvent.h" | #include "CEGUIInputEvent.h" | |||
#include "CEGUIWindowProperties.h" | #include "CEGUIWindowProperties.h" | |||
#include "CEGUIUDim.h" | #include "CEGUIUDim.h" | |||
#include "CEGUIWindowRenderer.h" | #include "CEGUIWindowRenderer.h" | |||
#include "CEGUITextUtils.h" | #include "CEGUITextUtils.h" | |||
#include "CEGUIBasicRenderedStringParser.h" | #include "CEGUIBasicRenderedStringParser.h" | |||
#include "CEGUIDefaultRenderedStringParser.h" | ||||
#include <vector> | #include <vector> | |||
#include <set> | #include <set> | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(push) | # pragma warning(push) | |||
# pragma warning(disable : 4251) | # pragma warning(disable : 4251) | |||
#endif | #endif | |||
// Start of CEGUI namespace section | // Start of CEGUI namespace section | |||
namespace CEGUI | namespace CEGUI | |||
skipping to change at line 197 | skipping to change at line 198 | |||
//! The vertical alignment of the window has changed. | //! The vertical alignment of the window has changed. | |||
static const String EventHorizontalAlignmentChanged; | static const String EventHorizontalAlignmentChanged; | |||
//! The a new window renderer was attached. | //! The a new window renderer was attached. | |||
static const String EventWindowRendererAttached; | static const String EventWindowRendererAttached; | |||
//! The currently assigned window renderer was detached. | //! The currently assigned window renderer was detached. | |||
static const String EventWindowRendererDetached; | static const String EventWindowRendererDetached; | |||
//! Window rotation factor(s) changed | //! Window rotation factor(s) changed | |||
static const String EventRotated; | static const String EventRotated; | |||
//! Window non-client setting was changed | //! Window non-client setting was changed | |||
static const String EventNonClientChanged; | static const String EventNonClientChanged; | |||
//! Window text parsing setting was changed | ||||
static const String EventTextParsingChanged; | ||||
// generated externally (inputs) | // generated externally (inputs) | |||
//! Mouse cursor has entered the Window. | //! Mouse cursor has entered the Window. | |||
static const String EventMouseEnters; | static const String EventMouseEnters; | |||
//! Mouse cursor has left the Window. | //! Mouse cursor has left the Window. | |||
static const String EventMouseLeaves; | static const String EventMouseLeaves; | |||
//! Mouse cursor was moved within the area of the Window. | //! Mouse cursor was moved within the area of the Window. | |||
static const String EventMouseMove; | static const String EventMouseMove; | |||
//! Mouse wheel was scrolled within the Window. | //! Mouse wheel was scrolled within the Window. | |||
static const String EventMouseWheel; | static const String EventMouseWheel; | |||
skipping to change at line 768 | skipping to change at line 771 | |||
/*! | /*! | |||
\brief | \brief | |||
Return a Rect object that describes, unclipped, the inner rectangle for | Return a Rect object that describes, unclipped, the inner rectangle for | |||
this window. The inner rectangle is typically an area that exclude s | this window. The inner rectangle is typically an area that exclude s | |||
some frame or other rendering that should not be touched by subsequ ent | some frame or other rendering that should not be touched by subsequ ent | |||
rendering. | rendering. | |||
\return | \return | |||
Rect object that describes, in unclipped screen pixel co-ordinates, the | Rect object that describes, in unclipped screen pixel co-ordinates, the | |||
window object's inner rect area. | window object's inner rect area. | |||
\note | ||||
This function is going to change from public visibility to pretecte | ||||
d. | ||||
All code accessing the area rects via external code should be using | ||||
the | ||||
regular getUnclippedInnerRect function. | ||||
*/ | */ | |||
virtual Rect getUnclippedInnerRect_impl(void) const; | virtual Rect getUnclippedInnerRect_impl(void) const; | |||
/*! | /*! | |||
\brief | \brief | |||
return the Window that currently has inputs captured. | return the Window that currently has inputs captured. | |||
\return | \return | |||
Pointer to the Window object that currently has inputs captured, or NULL | Pointer to the Window object that currently has inputs captured, or NULL | |||
if no Window has captured input. | if no Window has captured input. | |||
skipping to change at line 1821 | skipping to change at line 1829 | |||
*/ | */ | |||
void setInheritsAlpha(bool setting); | void setInheritsAlpha(bool setting); | |||
/*! | /*! | |||
\brief | \brief | |||
Invalidate this window causing at least this window to be redrawn d uring | Invalidate this window causing at least this window to be redrawn d uring | |||
the next rendering pass. | the next rendering pass. | |||
\return | \return | |||
Nothing | Nothing | |||
\deprecated | ||||
This function is deprecated in favour of the version taking a boole | ||||
an. | ||||
*/ | */ | |||
void invalidate(void); | void invalidate(void); | |||
/*! | /*! | |||
\brief | \brief | |||
Invalidate this window and - dependant upon \a recursive - all chil | ||||
d | ||||
content, causing affected windows to be redrawn during the next | ||||
rendering pass. | ||||
\param recursive | ||||
Boolean value indicating whether attached child content should also | ||||
be | ||||
invalidated. | ||||
- true will cause all child content to be invalidated also. | ||||
- false will just invalidate this single window. | ||||
\return | ||||
Nothing | ||||
*/ | ||||
void invalidate(const bool recursive); | ||||
/*! | ||||
\brief | ||||
Set the mouse cursor image to be used when the mouse enters this wi ndow. | Set the mouse cursor image to be used when the mouse enters this wi ndow. | |||
\param image | \param image | |||
Pointer to the Image object to use as the mouse cursor image when t he | Pointer to the Image object to use as the mouse cursor image when t he | |||
mouse enters the area for this Window. | mouse enters the area for this Window. | |||
\return | \return | |||
Nothing. | Nothing. | |||
*/ | */ | |||
void setMouseCursor(const Image* image) {d_mouseCursor = image;} | void setMouseCursor(const Image* image) {d_mouseCursor = image;} | |||
skipping to change at line 2816 | skipping to change at line 2844 | |||
void setNonClientWindow(const bool setting); | void setNonClientWindow(const bool setting); | |||
//! Return the parsed RenderedString object for this window. | //! Return the parsed RenderedString object for this window. | |||
const RenderedString& getRenderedString() const; | const RenderedString& getRenderedString() const; | |||
//! Return a pointer to any custom RenderedStringParser set, or 0 if no ne. | //! Return a pointer to any custom RenderedStringParser set, or 0 if no ne. | |||
RenderedStringParser* getCustomRenderedStringParser() const; | RenderedStringParser* getCustomRenderedStringParser() const; | |||
//! Set a custom RenderedStringParser, or 0 to remove an existing one. | //! Set a custom RenderedStringParser, or 0 to remove an existing one. | |||
void setCustomRenderedStringParser(RenderedStringParser* parser); | void setCustomRenderedStringParser(RenderedStringParser* parser); | |||
//! return the active RenderedStringParser to be used | //! return the active RenderedStringParser to be used | |||
virtual RenderedStringParser& getRenderedStringParser() const; | virtual RenderedStringParser& getRenderedStringParser() const; | |||
//! return whether text parsing is enabled for this window. | ||||
bool isTextParsingEnabled() const; | ||||
//! set whether text parsing is enabled for this window. | ||||
void setTextParsingEnabled(const bool setting); | ||||
//! return Vector2 \a pos after being fully unprojected for this Window . | //! return Vector2 \a pos after being fully unprojected for this Window . | |||
Vector2 getUnprojectedPosition(const Vector2& pos) const; | Vector2 getUnprojectedPosition(const Vector2& pos) const; | |||
//! return the pointer to the BiDiVisualMapping for this window, if any . | //! return the pointer to the BiDiVisualMapping for this window, if any . | |||
const BiDiVisualMapping* getBiDiVisualMapping() const | const BiDiVisualMapping* getBiDiVisualMapping() const | |||
{return d_bidiVisualMapping;} | {return d_bidiVisualMapping;} | |||
protected: | protected: | |||
// friend classes for construction / initialisation purposes (for now) | // friend classes for construction / initialisation purposes (for now) | |||
skipping to change at line 3341 | skipping to change at line 3373 | |||
Handler called when the window's non-client setting, affecting it's | Handler called when the window's non-client setting, affecting it's | |||
position and size relative to it's parent is changed. | position and size relative to it's parent is changed. | |||
\param e | \param e | |||
WindowEventArgs object whose 'window' pointer field is set to the w indow | WindowEventArgs object whose 'window' pointer field is set to the w indow | |||
that triggered the event. For this event the trigger window is alw ays | that triggered the event. For this event the trigger window is alw ays | |||
'this'. | 'this'. | |||
*/ | */ | |||
virtual void onNonClientChanged(WindowEventArgs& e); | virtual void onNonClientChanged(WindowEventArgs& e); | |||
/*! | ||||
\brief | ||||
Handler called when the window's setting for whether text parsing i | ||||
s | ||||
enabled is changed. | ||||
\param e | ||||
WindowEventArgs object whose 'window' pointer field is set to the w | ||||
indow | ||||
that triggered the event. For this event the trigger window is alw | ||||
ays | ||||
'this'. | ||||
*/ | ||||
virtual void onTextParsingChanged(WindowEventArgs& e); | ||||
/********************************************************************** *** | /********************************************************************** *** | |||
Implementation Functions | Implementation Functions | |||
*********************************************************************** **/ | *********************************************************************** **/ | |||
/*! | /*! | |||
\brief | \brief | |||
Perform actual update processing for this Window. | Perform actual update processing for this Window. | |||
\param elapsed | \param elapsed | |||
float value indicating the number of seconds elapsed since the last | float value indicating the number of seconds elapsed since the last | |||
update call. | update call. | |||
skipping to change at line 3619 | skipping to change at line 3663 | |||
surface. | surface. | |||
*/ | */ | |||
void updateGeometryRenderSettings(); | void updateGeometryRenderSettings(); | |||
//! transfer RenderingSurfaces to be owned by our target RenderingSurfa ce. | //! transfer RenderingSurfaces to be owned by our target RenderingSurfa ce. | |||
void transferChildSurfaces(); | void transferChildSurfaces(); | |||
//! helper function for calculating clipping rectangles. | //! helper function for calculating clipping rectangles. | |||
Rect getParentElementClipIntersection(const Rect& unclipped_area) const ; | Rect getParentElementClipIntersection(const Rect& unclipped_area) const ; | |||
//! helper function to invalidate window and optionally child windows. | ||||
void invalidate_impl(const bool recursive); | ||||
//! helper to return whether the inner rect size has changed | ||||
bool isInnerRectSizeChanged() const; | ||||
//! Default implementation of function to return Window outer rect area | ||||
. | ||||
virtual Rect getUnclippedOuterRect_impl() const; | ||||
//! Default implementation of function to return Window outer clipper a | ||||
rea. | ||||
virtual Rect getOuterRectClipper_impl() const; | ||||
//! Default implementation of function to return Window inner clipper a | ||||
rea. | ||||
virtual Rect getInnerRectClipper_impl() const; | ||||
//! Default implementation of function to return Window hit-test area. | ||||
virtual Rect getHitTestRect_impl() const; | ||||
virtual int writePropertiesXML(XMLSerializer& xml_stream) const; | virtual int writePropertiesXML(XMLSerializer& xml_stream) const; | |||
virtual int writeChildWindowsXML(XMLSerializer& xml_stream) const; | virtual int writeChildWindowsXML(XMLSerializer& xml_stream) const; | |||
virtual bool writeAutoChildWindowXML(XMLSerializer& xml_stream) const; | virtual bool writeAutoChildWindowXML(XMLSerializer& xml_stream) const; | |||
/********************************************************************** *** | /********************************************************************** *** | |||
Properties for Window base class | Properties for Window base class | |||
*********************************************************************** **/ | *********************************************************************** **/ | |||
static WindowProperties::Alpha d_alphaProperty; | static WindowProperties::Alpha d_alphaProperty; | |||
static WindowProperties::AlwaysOnTop d_alwaysOnTopProperty; | static WindowProperties::AlwaysOnTop d_alwaysOnTopProperty; | |||
static WindowProperties::ClippedByParent d_clippedByParentProperty; | static WindowProperties::ClippedByParent d_clippedByParentProperty; | |||
skipping to change at line 3669 | skipping to change at line 3728 | |||
static WindowProperties::MousePassThroughEnabled d_mousePassThroughE nabledProperty; | static WindowProperties::MousePassThroughEnabled d_mousePassThroughE nabledProperty; | |||
static WindowProperties::WindowRenderer d_windowRendererProperty; | static WindowProperties::WindowRenderer d_windowRendererProperty; | |||
static WindowProperties::LookNFeel d_lookNFeelProperty; | static WindowProperties::LookNFeel d_lookNFeelProperty; | |||
static WindowProperties::DragDropTarget d_dragDropTargetProperty; | static WindowProperties::DragDropTarget d_dragDropTargetProperty; | |||
static WindowProperties::AutoRenderingSurface d_autoRenderingSurfacePr operty; | static WindowProperties::AutoRenderingSurface d_autoRenderingSurfacePr operty; | |||
static WindowProperties::Rotation d_rotationProperty; | static WindowProperties::Rotation d_rotationProperty; | |||
static WindowProperties::XRotation d_xRotationProperty; | static WindowProperties::XRotation d_xRotationProperty; | |||
static WindowProperties::YRotation d_yRotationProperty; | static WindowProperties::YRotation d_yRotationProperty; | |||
static WindowProperties::ZRotation d_zRotationProperty; | static WindowProperties::ZRotation d_zRotationProperty; | |||
static WindowProperties::NonClient d_nonClientProperty; | static WindowProperties::NonClient d_nonClientProperty; | |||
static WindowProperties::TextParsingEnabled d_textParsingEnabledProper ty; | ||||
/********************************************************************** *** | /********************************************************************** *** | |||
Implementation Data | Implementation Data | |||
*********************************************************************** **/ | *********************************************************************** **/ | |||
//! definition of type used for the list of attached child windows. | //! definition of type used for the list of attached child windows. | |||
typedef std::vector<Window*> ChildList; | typedef std::vector<Window*> ChildList; | |||
//! definition of type used for the UserString dictionary. | //! definition of type used for the UserString dictionary. | |||
typedef std::map<String, String, String::FastLessCompare> UserStringMap ; | typedef std::map<String, String, String::FastLessCompare> UserStringMap ; | |||
//! definition of type used to track properties banned from writing XML . | //! definition of type used to track properties banned from writing XML . | |||
typedef std::set<String, String::FastLessCompare> BannedXMLPropertySet; | typedef std::set<String, String::FastLessCompare> BannedXMLPropertySet; | |||
skipping to change at line 3758 | skipping to change at line 3818 | |||
//! pointer to bidirection support object | //! pointer to bidirection support object | |||
BiDiVisualMapping* d_bidiVisualMapping; | BiDiVisualMapping* d_bidiVisualMapping; | |||
//! whether bidi visual mapping has been updated since last text change . | //! whether bidi visual mapping has been updated since last text change . | |||
mutable bool d_bidiDataValid; | mutable bool d_bidiDataValid; | |||
//! RenderedString representation of text string as ouput from a parser . | //! RenderedString representation of text string as ouput from a parser . | |||
mutable RenderedString d_renderedString; | mutable RenderedString d_renderedString; | |||
//! true if d_renderedString is valid, false if needs re-parse. | //! true if d_renderedString is valid, false if needs re-parse. | |||
mutable bool d_renderedStringValid; | mutable bool d_renderedStringValid; | |||
//! Shared instance of a parser to be used in most instances. | //! Shared instance of a parser to be used in most instances. | |||
static BasicRenderedStringParser d_basicStringParser; | static BasicRenderedStringParser d_basicStringParser; | |||
//! Shared instance of a parser to be used when rendering text verbatim | ||||
. | ||||
static DefaultRenderedStringParser d_defaultStringParser; | ||||
//! Pointer to a custom (user assigned) RenderedStringParser object. | //! Pointer to a custom (user assigned) RenderedStringParser object. | |||
RenderedStringParser* d_customStringParser; | RenderedStringParser* d_customStringParser; | |||
//! true if use of parser other than d_defaultStringParser is enabled | ||||
bool d_textParsingEnabled; | ||||
//! User ID assigned to this Window | //! User ID assigned to this Window | |||
uint d_ID; | uint d_ID; | |||
//! Holds pointer to some user assigned data. | //! Holds pointer to some user assigned data. | |||
void* d_userData; | void* d_userData; | |||
//! Holds a collection of named user string values. | //! Holds a collection of named user string values. | |||
UserStringMap d_userStrings; | UserStringMap d_userStrings; | |||
//! true if Window will be drawn on top of all other Windows | //! true if Window will be drawn on top of all other Windows | |||
bool d_alwaysOnTop; | bool d_alwaysOnTop; | |||
End of changes. 11 change blocks. | ||||
0 lines changed or deleted | 76 lines changed or added | |||
CEGUIWindowProperties.h | CEGUIWindowProperties.h | |||
---|---|---|---|---|
skipping to change at line 917 | skipping to change at line 917 | |||
- [wo] is a floating point value describing the absolute off set value for the maximum width. | - [wo] is a floating point value describing the absolute off set value for the maximum width. | |||
- [hs] is a floating point value describing the relative sca le value for the maximum height. | - [hs] is a floating point value describing the relative sca le value for the maximum height. | |||
- [ho] is a floating point value describing the absolute off set value for the maximum height. | - [ho] is a floating point value describing the absolute off set value for the maximum height. | |||
*/ | */ | |||
class UnifiedMaxSize : public Property | class UnifiedMaxSize : public Property | |||
{ | { | |||
public: | public: | |||
UnifiedMaxSize() : Property( | UnifiedMaxSize() : Property( | |||
"UnifiedMaxSize", | "UnifiedMaxSize", | |||
"Property to get/set the windows unified maximum size. Valu e is a \"UVector2\".", | "Property to get/set the windows unified maximum size. Valu e is a \"UVector2\".", | |||
"{{0,0},{0,0}}") | "{{1,0},{1,0}}") | |||
{} | {} | |||
String get(const PropertyReceiver* receiver) const; | String get(const PropertyReceiver* receiver) const; | |||
void set(PropertyReceiver* receiver, const String& value) ; | void set(PropertyReceiver* receiver, const String& value) ; | |||
}; | }; | |||
/*! | /*! | |||
\brief | \brief | |||
Property to access whether the window ignores mouse events and pass the m through to any windows behind it. | Property to access whether the window ignores mouse events and pass the m through to any windows behind it. | |||
skipping to change at line 1196 | skipping to change at line 1196 | |||
"NonClient", | "NonClient", | |||
"Property to get/set the 'non-client' setting for the Window. " | "Property to get/set the 'non-client' setting for the Window. " | |||
"Value is either \"True\" or \"False\".", | "Value is either \"True\" or \"False\".", | |||
"False") | "False") | |||
{} | {} | |||
String get(const PropertyReceiver* receiver) const; | String get(const PropertyReceiver* receiver) const; | |||
void set(PropertyReceiver* receiver, const String& value); | void set(PropertyReceiver* receiver, const String& value); | |||
}; | }; | |||
/*! | ||||
\brief | ||||
Property to access window text parsing enabled setting. | ||||
This property offers access to the text parsing setting for the window | ||||
that | ||||
specifies whether parsing will be done or whether text will be rendered | ||||
verbatim. | ||||
\par Usage: | ||||
- Name: TextParsingEnabled | ||||
- Format: "[text]". | ||||
\par Where [Text] is: | ||||
- "True" to indicate some form of parsing of window text is to occu | ||||
r. | ||||
- "False" to indicate that text should not be parsed, but be render | ||||
ed | ||||
verbatim. | ||||
*/ | ||||
class TextParsingEnabled : public Property | ||||
{ | ||||
public: | ||||
TextParsingEnabled() : Property( | ||||
"TextParsingEnabled", | ||||
"Property to get/set the text parsing setting for the Window. " | ||||
"Value is either \"True\" or \"False\".", | ||||
"True") | ||||
{} | ||||
String get(const PropertyReceiver* receiver) const; | ||||
void set(PropertyReceiver* receiver, const String& value); | ||||
}; | ||||
} // End of WindowProperties namespace section | } // End of WindowProperties namespace section | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _CEGUIWindowProperties_h_ | #endif // end of guard _CEGUIWindowProperties_h_ | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 35 lines changed or added | |||
FalItemListbox.h | FalItemListbox.h | |||
---|---|---|---|---|
/************************************************************************ | /************************************************************************ | |||
filename: FalItemListbox.h | filename: FalItemListbox.h | |||
created: Mon Mar 20 2006 | created: Mon Mar 20 2006 | |||
author: Tomas Lindquist Olsen | author: Tomas Lindquist Olsen | |||
*************************************************************************/ | *************************************************************************/ | |||
/************************************************************************* | /************************************************************************** | |||
Crazy Eddie's GUI System (http://www.cegui.org.uk) | * | |||
Copyright (C)2004 - 2006 Paul D Turner (paul@cegui.org.uk) | * Copyright (C) 2004 - 2009 Paul D Turner & The CEGUI Development Team | |||
* | ||||
This library is free software; you can redistribute it and/or | * Permission is hereby granted, free of charge, to any person obtaining | |||
modify it under the terms of the GNU Lesser General Public | * a copy of this software and associated documentation files (the | |||
License as published by the Free Software Foundation; either | * "Software"), to deal in the Software without restriction, including | |||
version 2.1 of the License, or (at your option) any later version. | * without limitation the rights to use, copy, modify, merge, publish, | |||
* distribute, sublicense, and/or sell copies of the Software, and to | ||||
This library is distributed in the hope that it will be useful, | * permit persons to whom the Software is furnished to do so, subject to | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | * the following conditions: | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | * | |||
Lesser General Public License for more details. | * The above copyright notice and this permission notice shall be | |||
* included in all copies or substantial portions of the Software. | ||||
You should have received a copy of the GNU Lesser General Public | * | |||
License along with this library; if not, write to the Free Software | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 U | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |||
SA | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |||
*************************************************************************/ | * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |||
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||||
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||||
* OTHER DEALINGS IN THE SOFTWARE. | ||||
************************************************************************** | ||||
*/ | ||||
#ifndef _FalItemListbox_h_ | #ifndef _FalItemListbox_h_ | |||
#define _FalItemListbox_h_ | #define _FalItemListbox_h_ | |||
#include "FalModule.h" | #include "FalModule.h" | |||
#include "../../elements/CEGUIItemListBase.h" | #include "../../elements/CEGUIItemListBase.h" | |||
// Start of CEGUI namespace section | // Start of CEGUI namespace section | |||
namespace CEGUI | namespace CEGUI | |||
{ | { | |||
/*! | /*! | |||
End of changes. 1 change blocks. | ||||
19 lines changed or deleted | 24 lines changed or added | |||
FalStaticText.h | FalStaticText.h | |||
---|---|---|---|---|
skipping to change at line 158 | skipping to change at line 158 | |||
Set whether the vertical scroll bar will be shown if needed. | Set whether the vertical scroll bar will be shown if needed. | |||
*/ | */ | |||
void setVerticalScrollbarEnabled(bool setting); | void setVerticalScrollbarEnabled(bool setting); | |||
/*! | /*! | |||
\brief | \brief | |||
Set whether the horizontal scroll bar will be shown if needed. | Set whether the horizontal scroll bar will be shown if needed. | |||
*/ | */ | |||
void setHorizontalScrollbarEnabled(bool setting); | void setHorizontalScrollbarEnabled(bool setting); | |||
//! return the current horizontal formatted text extent in pixels. | ||||
float getHorizontalTextExtent() const; | ||||
//! return the current vertical formatted text extent in pixels. | ||||
float getVerticalTextExtent() const; | ||||
void render(void); | void render(void); | |||
protected: | protected: | |||
//! update string formatting (gets area size to use from looknfeel) | ||||
void updateFormatting() const; | ||||
//! update string formatting using given area size. | ||||
void updateFormatting(const Size& sz) const; | ||||
// overridden from FalagardStatic base class | // overridden from FalagardStatic base class | |||
void onLookNFeelAssigned(); | void onLookNFeelAssigned(); | |||
void onLookNFeelUnassigned(); | void onLookNFeelUnassigned(); | |||
// text field with scrollbars methods | // text field with scrollbars methods | |||
void renderScrolledText(void); | void renderScrolledText(void); | |||
void configureScrollbars(void); | void configureScrollbars(void); | |||
Scrollbar* getVertScrollbar(void) const; | Scrollbar* getVertScrollbar(void) const; | |||
Scrollbar* getHorzScrollbar(void) const; | Scrollbar* getHorzScrollbar(void) const; | |||
Rect getTextRenderArea(void) const; | Rect getTextRenderArea(void) const; | |||
Size getDocumentSize(const Rect& renderArea) const; | Size getDocumentSize(const Rect& renderArea) const; | |||
void setupStringFormatter(); | void setupStringFormatter() const; | |||
// overridden event handlers | // overridden event handlers | |||
bool onTextChanged(const EventArgs& e); | bool onTextChanged(const EventArgs& e); | |||
bool onSized(const EventArgs& e); | bool onSized(const EventArgs& e); | |||
bool onFontChanged(const EventArgs& e); | bool onFontChanged(const EventArgs& e); | |||
bool onMouseWheel(const EventArgs& e); | bool onMouseWheel(const EventArgs& e); | |||
// event subscribers | // event subscribers | |||
bool handleScrollbarChange(const EventArgs& e); | bool handleScrollbarChange(const EventArgs& e); | |||
// properties | // properties | |||
static FalagardStaticTextProperties::TextColours d_textColoursPr operty; | static FalagardStaticTextProperties::TextColours d_textColoursPr operty; | |||
static FalagardStaticTextProperties::VertFormatting d_vertFormattin gProperty; | static FalagardStaticTextProperties::VertFormatting d_vertFormattin gProperty; | |||
static FalagardStaticTextProperties::HorzFormatting d_horzFormattin gProperty; | static FalagardStaticTextProperties::HorzFormatting d_horzFormattin gProperty; | |||
static FalagardStaticTextProperties::VertScrollbar d_vertScrollbar Property; | static FalagardStaticTextProperties::VertScrollbar d_vertScrollbar Property; | |||
static FalagardStaticTextProperties::HorzScrollbar d_horzScrollbar Property; | static FalagardStaticTextProperties::HorzScrollbar d_horzScrollbar Property; | |||
static FalagardStaticTextProperties::HorzExtent d_horzExtentPro | ||||
perty; | ||||
static FalagardStaticTextProperties::VertExtent d_vertExtentPro | ||||
perty; | ||||
// implementation data | // implementation data | |||
//! Horizontal formatting to be applied to the text. | //! Horizontal formatting to be applied to the text. | |||
HorizontalTextFormatting d_horzFormatting; | HorizontalTextFormatting d_horzFormatting; | |||
//! Vertical formatting to be applied to the text. | //! Vertical formatting to be applied to the text. | |||
VerticalTextFormatting d_vertFormatting; | VerticalTextFormatting d_vertFormatting; | |||
ColourRect d_textCols; //!< Colours used when rend ering the text. | ColourRect d_textCols; //!< Colours used when rend ering the text. | |||
bool d_enableVertScrollbar; //!< true if vertical scrol l bar is enabled. | bool d_enableVertScrollbar; //!< true if vertical scrol l bar is enabled. | |||
bool d_enableHorzScrollbar; //!< true if horizontal scr oll bar is enabled. | bool d_enableHorzScrollbar; //!< true if horizontal scr oll bar is enabled. | |||
//! Class that renders RenderedString with some formatting. | //! Class that renders RenderedString with some formatting. | |||
FormattedRenderedString* d_formattedRenderedString; | mutable FormattedRenderedString* d_formattedRenderedString; | |||
typedef std::vector<Event::Connection> ConnectionList; | typedef std::vector<Event::Connection> ConnectionList; | |||
ConnectionList d_connections; | ConnectionList d_connections; | |||
//! true when string formatting is up to date. | ||||
mutable bool d_formatValid; | ||||
}; | }; | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
# pragma warning(pop) | # pragma warning(pop) | |||
#endif | #endif | |||
#endif // end of guard _FalStaticText_h_ | #endif // end of guard _FalStaticText_h_ | |||
End of changes. 6 change blocks. | ||||
2 lines changed or deleted | 20 lines changed or added | |||
FalStaticTextProperties.h | FalStaticTextProperties.h | |||
---|---|---|---|---|
skipping to change at line 181 | skipping to change at line 181 | |||
HorzScrollbar() : Property( | HorzScrollbar() : Property( | |||
"HorzScrollbar", | "HorzScrollbar", | |||
"Property to get/set the setting for the horizontal scroll b ar. Value is either \"True\" or \"False\".", | "Property to get/set the setting for the horizontal scroll b ar. Value is either \"True\" or \"False\".", | |||
"False") | "False") | |||
{} | {} | |||
String get(const PropertyReceiver* receiver) const; | String get(const PropertyReceiver* receiver) const; | |||
void set(PropertyReceiver* receiver, const String& value); | void set(PropertyReceiver* receiver, const String& value); | |||
}; | }; | |||
/*! | ||||
\brief | ||||
Read-only property to access the current horizontal extent of the forma | ||||
tted | ||||
StaticText string. | ||||
\par Usage: | ||||
- Name: HorzExtent | ||||
- Format: float value indicating the pixel extent. | ||||
*/ | ||||
class HorzExtent : public Property | ||||
{ | ||||
public: | ||||
HorzExtent() : Property( | ||||
"HorzExtent", | ||||
"Property to get the current horizontal extent of the formatted tex | ||||
t " | ||||
"string. Value is a float indicating the pixel extent.", | ||||
"0") | ||||
{} | ||||
String get(const PropertyReceiver* receiver) const; | ||||
void set(PropertyReceiver* receiver, const String& value); | ||||
}; | ||||
/*! | ||||
\brief | ||||
Read-only property to access the current vertical extent of the formatt | ||||
ed | ||||
StaticText string. | ||||
\par Usage: | ||||
- Name: VertExtent | ||||
- Format: float value indicating the pixel extent. | ||||
*/ | ||||
class VertExtent : public Property | ||||
{ | ||||
public: | ||||
VertExtent() : Property( | ||||
"VertExtent", | ||||
"Property to get the current vertical extent of the formatted text | ||||
" | ||||
"string. Value is a float indicating the pixel extent.", | ||||
"0") | ||||
{} | ||||
String get(const PropertyReceiver* receiver) const; | ||||
void set(PropertyReceiver* receiver, const String& value); | ||||
}; | ||||
} // End of FalagardStaticTextProperties namespace section | } // End of FalagardStaticTextProperties namespace section | |||
} // End of CEGUI namespace section | } // End of CEGUI namespace section | |||
#endif // end of guard _FalagardStaticTextProperties_h_ | #endif // end of guard _FalagardStaticTextProperties_h_ | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 50 lines changed or added | |||