Finale PDK Framework 0.73
Public Types | Public Member Functions | List of all members
FCResourceWindow Class Reference

Class for modeless and modal dialogs that are visually designed as a resource. This class is also a parent class to FCCustomWindow. More...

#include <ff_dialogs.h>

Inheritance diagram for FCResourceWindow:
__FCUserWindow __FCCollection __FCIteratorBase __FCBase FCCustomWindow FCCustomLuaWindow

Public Types

enum  EXECMODAL_RETURNS { EXECMODAL_CLOSE = 0 , EXECMODAL_OK = 1 , EXECMODAL_CANCEL = 2 }
 The return codes for the ExecuteModal() method. More...
 
- Public Types inherited from __FCUserWindow
enum  COMMAND_MOD_KEYS {
  CMDMODKEY_SHIFT = 0x00000001 , CMDMODKEY_ALT = 0x00000002 , CMDMODKEY_CTRL = 0x00000004 , CMDMODKEY_COMMAND = 0x00000008 ,
  CMDMODKEY_FUNCTION = 0x00000010
}
 Constants for the QueryLastCommandModifierKeys() method. More...
 
enum  MENU_COMMAND_TYPES { MENUCMDTYPE_SELECTION = 0 , MENUCMDTYPE_ACCELERATOR = 1 }
 Constants for menu command types. More...
 
- Public Types inherited from __FCBase
enum  PDKFRAMEWORK_CLASSID {
  FCID_UNKNOWN = 0 , FCID_ACCIDENTALMOD , FCID_ACTIVELYRIC , FCID_ALLOTMENT ,
  FCID_ARTICULATION , FCID_ARTICULATIONDEF , FCID_BACKWARDREPEAT , FCID_BASELINE ,
  FCID_BEAMMOD , FCID_BEATCHARTELEMENT , FCID_BOOKMARK , FCID_BROKENBEAMMOD ,
  FCID_CATEGORYDEF , FCID_CELLCLEFCHANGE , FCID_CELLFRAMEHOLD , FCID_CELLGRAPHIC ,
  FCID_CELLTEXT , FCID_CENTERSMARTSHAPE , FCID_CHORD , FCID_CHORDPREFS ,
  FCID_CHORDSUFFIXELEMENT , FCID_CHORUSSYLLABLE , FCID_CLEFDEF , FCID_COMPOSITETIMESIGBOTTOMELEMENT ,
  FCID_COMPOSITETIMESIGTOPELEMENT , FCID_CROSSSTAFFMOD , FCID_CUSTOMSMARTLINEDEF , FCID_CUSTOMSTEMMOD ,
  FCID_DISTANCEPREFS , FCID_DOTMOD , FCID_ENCLOSURE , FCID_ENDINGREPEAT ,
  FCID_ENIGMATEXTSTYLE , FCID_ENTRYALTERMOD , FCID_EXECUTABLESHAPEDEF , FCID_EXPRESSION ,
  FCID_FONTINFO , FCID_FONTPREFS , FCID_FREEZESYSTEM , FCID_FRETBOARDSTYLEDEF ,
  FCID_FRETBOARDSTYLEDEFS , FCID_FRETBOARDGROUPDEF , FCID_FRETBOARDGROUPDEFS , FCID_FRETINSTRUMENTDEF ,
  FCID_GENERALPREFS , FCID_GRIDSGUIDESPREFS , FCID_GROUP , FCID_GROUPNAMEPOSITIONPREFS ,
  FCID_HUMANPLAYBACKPREFS , FCID_INDEPENDENTCELLDETAIL , FCID_INSTRUMENTDEF , FCID_INSTRUMENTPLAYBACKDATA ,
  FCID_KEYMODEDEF , FCID_KEYSIGNATURE , FCID_LAYERPREFS , FCID_LYRICSBASELINE ,
  FCID_LYRICSPREFS , FCID_MEASURE , FCID_MEASURENUMBERREGION , FCID_METATOOLASSIGNMENT ,
  FCID_MIDIEXPRESSION , FCID_MISCDOCPREFS , FCID_MULTIMEASUREREST , FCID_MULTIMEASURERESTPREFS ,
  FCID_MULTISTAFFINSTRUMENT , FCID_MULTISTAFFINSTRUMENTS , FCID_MUSICCHARACTERPREFS , FCID_MUSICSPACINGPREFS ,
  FCID_NUMBER , FCID_NOTEHEADMOD , FCID_OTHERINCI , FCID_PERCUSSIONLAYOUTNOTE ,
  FCID_PERCUSSIONSTAFF , FCID_PERFORMANCEMOD , FCID_PAGE , FCID_PAGEFORMATPREFS ,
  FCID_PAGEGRAPHIC , FCID_PAGETEXT , FCID_PART , FCID_PARTEXTRACTPREFS ,
  FCID_PARTSCOPEPREFS , FCID_PARTSTAFFVOICING , FCID_PERCUSSIONNOTEMOD , FCID_PIANOBRACEPREFS ,
  FCID_PLAYBACKPREFS , FCID_RAWTEXT , FCID_REPEATPREFS , FCID_SECONDARYBEAMBREAKMOD ,
  FCID_BEAMEXTENSIONMOD , FCID_SECTIONSYLLABLE , FCID_SEPARATEMEASURENUMBER , FCID_SEPARATEPLACEMENT ,
  FCID_SHAPEDEF , FCID_SHAPEEXPRESSIONDEF , FCID_SLURCONTOURPREFS , FCID_SIZEPREFS ,
  FCID_SMARTSHAPE , FCID_SMARTSHAPEENTRYMARK , FCID_SMARTSHAPEMEASUREMARK , FCID_SMARTSHAPEPREFS ,
  FCID_STAFF , FCID_STAFFLIST , FCID_STAFFNAMEPOSITION , FCID_STAFFNAMEPOSITIONPREFS ,
  FCID_STAFFSTYLEASSIGN , FCID_STAFFSTYLEDEF , FCID_STAFFSYSTEM , FCID_STEMCONNECTIONTABLE ,
  FCID_STEMMOD , FCID_STRING , FCID_SYLLABLEENTRYMOD , FCID_SYSTEMSTAFF ,
  FCID_TABLATURENOTEMOD , FCID_TEMPOELEMENT , FCID_TEXTBLOCK , FCID_TEXTEXPRESSIONDEF ,
  FCID_TEXTREPEAT , FCID_TEXTREPEATDEF , FCID_TIEMOD , FCID_TIEPREFS ,
  FCID_TIECONTOURPREFS , FCID_TIEPLACEMENTPREFS , FCID_TIMESIGNATURE , FCID_TUPLET ,
  FCID_TUPLETPREFS , FCID_VERSESYLLABLE
}
 Constants for the GetClassID method. More...
 
enum  MEASUREMENTUNITS {
  MEASUREMENTUNIT_DEFAULT = UNIT_DEFAULT , MEASUREMENTUNIT_EVPUS = UNIT_EVPUS , MEASUREMENTUNIT_INCHES = UNIT_INCHES , MEASUREMENTUNIT_CENTIMETERS = UNIT_CENTS ,
  MEASUREMENTUNIT_POINTS = UNIT_POINTS , MEASUREMENTUNIT_PICAS = UNIT_PICAS , MEASUREMENTUNIT_SPACES = UNIT_SPACES , MEASUREMENTUNIT_MILLIMETERS = 100
}
 Constants for Finale's standard measurement units. More...
 

Public Member Functions

 FCResourceWindow (int resid)
 The constructor for FCResourceWindow. More...
 
virtual ~FCResourceWindow ()
 The destructor.
 
const char * ClassName () const override
 Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More...
 
void DestroyWindow ()
 Destroys the window. Mainly for internal use.

 
void InitWindow () override
 Inherited implementation of InitWindow(). More...
 
void CloseWindow () override
 Closes the window. This method is usually not overridden. Use methods like CanClose() instead. More...
 
__FCUserWindowGetParent ()
 Returns the parent window object.
 
void ShowModeless (EWND WINCODE(hParent))
 Displays the dialog box as a modeless window.
 
void ShowModeless (__FCUserWindow *pParent)
 Displays the dialog box as a modeless window. More...
 
EXECMODAL_RETURNS ExecuteModal_EWND (EWND hParent)
 Executes a dialog in a modal state (EWND version). More...
 
EXECMODAL_RETURNS ExecuteModal (__FCUserWindow *pParent=nullptr)
 Executes a dialog box in a modal state. More...
 
virtual bool HandleWMNotify (WPARAM wparam, LPARAM lparam)
 Handles notifications on Windows.
 
void _SetupInternalWindowCode ()
 For internal use only.
 
bool GetWantsDpiAwareness () const
 Gets the HiDPI awareness state of the window. More...
 
void SetWantsDpiAwareness (bool WINCODE(state))
 Sets the HiDPI awareness state of the window. More...
 
FCControlAddCtrl (FCControl *pControl)
 Adds a control object to the dialog collection.
 
FCCtrlLineAddLine (twobyte id)
 Links a line object to the dialog resource.
 
FCCtrlStaticAddStatic (twobyte id)
 Links a static text object to the dialog resource.
 
FCCtrlImageAddImage (twobyte id)
 Links an image object to the dialog resource.
 
FCCtrlComboBoxAddComboBox (twobyte id)
 Links a combo box object to the dialog resource.
 
FCCtrlEditAddEdit (twobyte id)
 Links an edit field object to the dialog resource.
 
FCCtrlTextEditorAddTextEditor (twobyte id)
 Links an edit text object to the dialog resource.
 
FCCtrlPopupAddPopup (twobyte id)
 Links a popup object to the dialog resource.
 
FCCtrlListBoxAddListBox (twobyte id)
 Links a list box object to the dialog resource.
 
FCCtrlButtonAddButton (twobyte id)
 Links a button object to the dialog resource.
 
FCCtrlSliderAddSlider (twobyte id)
 Links a slider object to the dialog resource.
 
FCCtrlRadioButtonAddRadioButton (twobyte id)
 Links a radio button object to the dialog resource.
 
FCCtrlCheckboxAddCheckbox (twobyte id)
 Links a checkbox object to the dialog resource.
 
FCCtrlUpDownAddUpDown (twobyte id)
 Links a up/down object to the dialog resource.
 
FCCtrlDataListAddDataList (twobyte id)
 Links a tree view to the dialog resource.
 
FCCtrlTreeAddTree (twobyte id)
 Links a data list to the dialog resource.
 
- Public Member Functions inherited from __FCUserWindow
 __FCUserWindow ()
 The constuctor.
 
FCUICreateChildUI () const
 Creates and returns an instance of FCUI with this window as the parent window. This is mainly for launching built-in modeless dialogs on top of the current window. (This is especially important on the Windows platform.) More...
 
bool GetPointsMeasurement ()
 Returns if the measurements and positioning is in points or in a system-native unit for this window. More...
 
bool IsModal ()
 Returns true if the dialog currently is running in a modal state.
 
void SetEnabled (bool state)
 Sets the enabled state of the window. More...
 
FCControlGetItemAt (int index) const
 Overloaded implementation of GetItemAt(). More...
 
void SetWidth (float newwidth)
 Changes the width of the window frame.
 
float GetWidth ()
 Returns the current width of the window frame.
 
void SetHeight (float newheight)
 Changes the height of the window frame. More...
 
float GetHeight ()
 Returns the current height of the window frame.
 
void SetClientWidth (float newwidth)
 Changes the width of the window client area. More...
 
float GetClientWidth ()
 Returns the current width of the window client area. More...
 
void SetClientHeight (float newheight)
 Changes the height of the window client area (excluding the title bar). More...
 
float GetClientHeight ()
 Returns the current height of the window client area, excluding the title bar. More...
 
bool IsDarkModeAppearance () const
 Returns the current Dark Mode state of the window. (Currently macOS only.) More...
 
void SetTitle (FCString *pTitle)
 Sets the caption (title) for the window. More...
 
void GetTitle (FCString *pTitle)
 Gets the caption (title) for the window. More...
 
bool QueryLastCommandModifierKeys (FLAG_32 modifiers)
 Returns if the user held down a specific set of modifier keys at the last "command" event, such as HandleCommand(). More...
 
bool TryToCloseWindow ()
 Tries to close the window. This method calls the CanClose() virtual method before calling CloseWindow(). More...
 
void SetMaximumResizeWidth (int width)
 Sets the maximum resize width for resizable dialogs/windows.
 
void SetMaximumResizeHeight (int height)
 Sets the maximum resize height for resizable dialogs/windows.
 
float GetMinimumResizeWidth ()
 Returns the minimum resize width for resizable dialogs/windows.
 
float GetMinimumResizeHeight ()
 Returns the minimum resize height for resizable dialogs/windows.
 
float GetMaximumResizeWidth ()
 Returns the maximum resize width for resizable dialogs/windows.
 
float GetMaximumResizeHeight ()
 Returns the maximum resize height for resizable dialogs/windows.
 
bool WindowExists () const
 Returns true if the window exists in the user interface. More...
 
void Hide ()
 Hides the window.
 
void ShowAndActivate ()
 Makes the window visible and sets it focused.
 
virtual void WindowDestroyed ()
 Called once just when the window/dialog has been destroyed. More...
 
virtual void DarkModeIsChanging (bool isDarkMode)
 Called whenever Dark Mode changes. (Currently macOS only.) More...
 
virtual void OSMenuCommandExecuted (EMENUID menuCommand, int menuCommandType)
 Called after a menu command on the main menu tree is executed. This function is also called when keyboard shortcuts are used to execute the menu item. On Windows, the command value for a keyboard shortcut (aka "accelerator") is sometimes different than that of the equivalent menu command. You can use the menuCommandType parameter to distinguish them. More...
 
virtual void CloseButtonPressed ()
 Virtual method that is called when a control with a "Close" action is pressed by the user. More...
 
virtual void OkButtonPressed ()
 Virtual handler method that is called when a control with a "OK" action is pressed by the user. More...
 
virtual void CancelButtonPressed ()
 Virtual handler method that is called when a control with a "Cancel" action is pressed by the user. More...
 
virtual bool HandleCommand (FCControl *pControl)
 Virtual method that is called when a user command occurs, such as a button press. More...
 
virtual void TextSelectionChanged (FCControl *pControl)
 Virtual method that is called when the selected text on a FCCtrlTextEditor control changes. More...
 
virtual void ScrollChanged (FCControl *pControl)
 Virtual method that is called when the scroll changes on a control with a scrollbar. More...
 
virtual bool HandleKeyboardCommand (FCControl *pControl, eUniChar16 character)
 Virtual method that notifies when a keyboard command has been requested with the Command key (macOS) or Control key (Windows) sent to a control that supports it. Some examples of standard keyboard commands that a caller might choose to handle are. More...
 
virtual void HandleSwitcherSelect (FCCtrlSwitcher *pControl, int switchindex)
 Virtual method that is called when a switcher control is clicked. Please note that switcher selections also produces calls to HandleCommand. More...
 
virtual void HandleUpDownPressed (FCControl *pControl, int delta)
 Virtual handler method for up/down arrow controls when they are clicked. Overwrite to provide functionality. More...
 
virtual void HandleDataListSelect (FCCtrlDataList *pControl, int lineindex)
 Virtual handler method for when FCCtrlDataList selection state changes. Overwrite to provide functionality. More...
 
virtual void HandleDataListCheck (FCCtrlDataList *pControl, int lineindex, bool checkstate)
 Virtual handler method for when FCCtrlDataList check state changes (for data list controls with check boxes). Overwrite to provide functionality. More...
 
virtual void HandleListDoubleClick (FCControl *pControl)
 Called every time there's a double-click inside a data list or list box. More...
 
virtual bool HandleListEnterKey (FCControl *pControl)
 Called every time there's an enter key hit inside a data list or list box. More...
 
virtual void HandleTimer (twobyte timerID)
 Virtual handler method that is called on timer events. Overwrite in child classes. More...
 
virtual void HandleActivate (bool activated)
 Virtual method that is called when the window is activated or deactivated. Overwrite in child classes. More...
 
virtual void HandleResize (int newwidth, int newheight, int oldwidth, int oldheight)
 Handler called when user resizes the window. More...
 
virtual void MouseTrackingStarted (FCControl *pControl)
 Virtual method that is called when a mouse tracking starts. Currently only supported fo FCCtrlSlider. More...
 
virtual void MouseTrackingStopped (FCControl *pControl)
 Virtual method that is called when a mouse tracking stops. Currently only supported fo FCCtrlSlider. More...
 
FCControlFindControl (int controlid)
 Finds a control based on the control's ID. More...
 
void SetTimer (twobyte timerID, ufourbyte msInterval)
 Creates a timer with the supplied ID and the timeout/refresh interval. More...
 
void StopTimer (twobyte timerID)
 Destroys a previously created timer (created with SetTimer). More...
 
void Activate ()
 Activates the window and sets it in user focus. More...
 
bool GetPreventClosing () const
 Returns whether the window may be closed. More...
 
void SetPreventClosing (bool state)
 Sets whether the window may be closed. Note that certain situations may still close the window even when this value is true, such as when the Finale app shuts down. More...
 
virtual bool CanClose ()
 Virtual method that decides if the window can close or not. More...
 
bool IsVisible ()
 Returns true if the window is visible.
 
void StorePosition (bool storesize)
 Stores the window position for use with RestorePosition. More...
 
bool RestorePosition ()
 Restores the window's position and size (if the size is stored). More...
 
void SetRestorePositionData (float x, float y, float width, float height)
 Sets the restore position and size. More...
 
void SetRestorePositionOnlyData (float x, float y)
 Sets the restore position, but with no size. More...
 
float GetStoredX () const
 Returns the stored horizonal position, for use in the restore feature. More...
 
float GetStoredY () const
 Returns the stored vertical position, for use in the restore feature. More...
 
float GetStoredWidth () const
 Returns the stored width. -1 if no width has been stored. More...
 
float GetStoredHeight () const
 Returns the stored height. -1 if no height has been stored. More...
 
bool IsWindowshade ()
 Returns true if the window is in window shade mode.
 
void Windowshade (bool windowshade)
 Sets the window in a "windowshade" mode (where only the title bar is visible) - or restore the window to full size. More...
 
void SetWindowAlpha (twobyte alphapercent)
 Sets the transparency for the window. More...
 
void StartBufferControlMovement ()
 Marks a start of buffered movement for the controls in the dialog. More...
 
bool EndBufferControlMovement ()
 Resizes/moves all buffered control movements made since the StartBufferControlMovement call.
 
bool IsInBufferMode ()
 Returns true if buffered movement has been started with StartBufferControlMovement. More...
 
- Public Member Functions inherited from __FCCollection
 __FCCollection ()
 The constructor.
 
virtual ~__FCCollection ()
 The virtual destructor, which deallocates the array and also all its elements. More...
 
int GetCount () const
 Returns the number of elements of the collection. More...
 
void Add (__FCBase *pNewItem)
 Adds an element to the end of the collection. More...
 
bool UniqueAdd (__FCBase *pNewItem)
 Adds an element to the end of the collection, but only if it doesn't exist in the collection before. More...
 
void InsertItemAt (__FCBase *pNewItem, int index)
 Inserts an item into the collection. More...
 
bool ElementExists (__FCBase *pQueryItem)
 Returns true if the element is found in the collection, otherwise false.
 
void ClearAll ()
 Destroys all the objects in the collection and empties the collection. More...
 
void DetachAll ()
 Removes all the objects from the collection, without freeing/destroying the objects. More...
 
__FCBaseGetItemAt (int index) const
 Returns the object at the index position. Index is 0-based. More...
 
__FCBaseGetLastItem () const
 Returns the last item in the collection.
 
__FCBaseoperator[] (int index) const
 Identical to the GetItemAt method.
 
int GetIndexOf (__FCBase *pObject) const
 Returns the 0-based order index for the object within the collection. More...
 
__FCBaseDetachItemAt (int index)
 Removes the object at the index position. Index is 0-based. More...
 
bool ClearItemAt (int index)
 Deletes the object at the index position and disposes the object. Index is 0-based. More...
 
int ToEndFrom (int index, FCIteratorHandler *pIterator)
 Processes one element after another and iterates from one specific index to the end of the collection. More...
 
int ForEach (FCIteratorHandler *pIterator) override
 Processes all elements in the collection (starting with item 0), or until the iterator Iterate() returns false. More...
 
virtual int ForEachIndex (FCIteratorHandler *pIterator)
 Same as ForEach, but the IterateIndex callback of the iterator handler is used instead.
 
__FCBaseFindFirst (FCIteratorHandler *pIterator) override
 Process elements until a match is found. More...
 
__FCBaseFindUserData (void *data_to_find)
 Returns the first element in the collection that has the indicated userdata. More...
 
bool Sort (FCIteratorHandler *pIterator)
 Sorts the elements of. More...
 
bool Swap (int index1, int index2)
 Swaps to items in the collection. More...
 
bool IsEmpty () const
 Returns true if the collection contains no elements. More...
 
int MoveFrom (__FCCollection *pOtherCollection, bool unique=false)
 Moves elements from another collection into this collection. The other will be empty after the operation. More...
 
bool IsIdentical (const __FCBase *pCompareObject) const override
 Returns true if two collections are considered to be identical. More...
 
void DebugDump () override
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCIteratorBase
const char * ClassName () const override
 Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More...
 
 __FCIteratorBase ()
 The constructor.
 
- Public Member Functions inherited from __FCBase
virtual const PDKFRAMEWORK_CLASSID GetClassID () const
 Returns the internal class ID for the PDK Framework class. This is implemented mostly because Lua has problems to resolve the true classes of inherited objects. More...
 
virtual ~__FCBase ()
 Virtual destructor, so all inherited classes get the virtual destructor.
 
void DebugMsgInt (const char *pszPrefixText, int i)
 Creates a simple Message Box for debug purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. More...
 
void DebugMsgHex (const char *pszPrefixText, int i)
 Creates a simple Message Box for debug purposes. The text appears with the extra digit (as a hexadecimal number) appearing afterwards. More...
 
void DebugMsgString (const char *pszPrefixText, const char *thestring)
 Creates a simple Message Box for debug purposes. The text appears with the extra string appearing afterwards. More...
 
void DebugMsg (const char *pszMsg)
 Creates a simple Message Box for debug purposes with just one text string. More...
 
void DebugOutMenuInfo (FCUI *pUI, int menuixd_horiz, int menuixd_vert) const
 Outputs the menu command info for debugging purposes. More...
 
int DebugOutFormat (const char *fmt,...)
 Outputs debug text using C style "printf" syntax. More...
 
virtual void DebugDataDump ()
 Outputs a memory dump of the data block in the object for debugging purposes. More...
 
virtual void DebugDataByteArrayDump ()
 Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. More...
 
void Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state)
 Sets a 16 bit flag. More...
 
void Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state)
 Sets/resets a 32 bit flag, by using a bit mask. More...
 
bool GetBitFlag (FLAG_32 flag, FLAG_32 flagbits) const
 Gets a state from flag bits. Returns true if any bit in the mask is set. More...
 
int GetBitCount (FLAG_32 flag)
 Returns the total number of set bits in a 32-bit unsigned int.
 
void SetSpecific32Bit (FLAG_32 *flag, int bitnumber, bool state)
 Sets/resets a single bit in a 32 bit flag, by specifying one specific bit. More...
 
void SetUserData (void *pData)
 Sets the user data attached to the instance of an object. More...
 
void SetUserData2 (void *pData)
 Sets the additional user data attached to the instance of an object. More...
 
void * GetUserData () const
 Gets the user data attached to the instance of an object. More...
 
void * GetUserData2 () const
 Gets the additional user data attached to the instance of an object. More...
 
void StoreXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file. More...
 
void StoreXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int value)
 Helper function to store integer objects in the XML file. More...
 
void StoreXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool value)
 Helper function to store boolean objects in the XML file. More...
 
void StoreXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file, as an attribute to a node. More...
 
void StoreXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int value)
 Helper function to store integer objects in the XML file, as an attribute to a node. More...
 
void StoreXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool value)
 Helper function to store boolean objects in the XML file, as an attribute to a node. More...
 
void StoreXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float value)
 Helper function to store floating point objects in the XML file, as an attribute to a node. More...
 
virtual void StoreToXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to store an object's data. More...
 
bool ReadXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file. More...
 
bool ReadXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int *pValue)
 Helper method to read integer objects from the XML file. More...
 
bool ReadXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool *pValue)
 Helper method to read boolean objects from the XML file. More...
 
bool ReadXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int *pValue)
 Helper method to read integer objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool *pValue)
 Helper method to read boolean objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float *pValue)
 Helper method to read floating point objects from the XML file, as an attribute to a node. More...
 
virtual bool ReadFromXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to read object data. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from __FCBase
static void DebugOutPtr (const char *pszPrefixText, void *ptr)
 Static method that outputs a line for debugging purposes. The prefix text appears with the extra ptr (in hexadeximal representation) appearing afterwards. More...
 
static void DebugOutInt (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. More...
 
static void DebugOutFloat (const char *pszPrefixText, double f)
 Static method that outputs a line for debugging purposes. The text appears with the extra float value appearing afterwards. More...
 
static void DebugOutTag (const char *pszPrefixText, EXTAG extag)
 Static method that outputs a line for debugging purposes. The text appears with the EXTAG (in text) appearing afterwards. More...
 
static void DebugOutHex (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in hexadecimal presentation) appearing afterwards. More...
 
static void DebugOutBin (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in binary presentation) appearing afterwards. More...
 
static void DebugOutString (const char *pszPrefixText, const char *thestring)
 Static method that outputs a line for debugging purposes (C string version). The text appears with the extra string appearing afterwards. More...
 
static void DebugOutString (const char *pszPrefixText, FCString *pString)
 Static method that outputs a line for debugging purposes (FCString version). The text appears with the extra string appearing afterwards. More...
 
static void DebugOutBool (const char *pszPrefixText, bool state)
 Static method that outputs a line for debugging purposes. The boolean state appears afterwards as either "TRUE" or "FALSE". More...
 
static void DebugOutBlock (const void *pBuffer, int startoffset, int size)
 Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) until the whole memory block is dumped. More...
 
static void DebugOutByteArrayBlock (const void *pBuffer, int startoffset, int size)
 Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) as a C++ onebyte array, until the whole memory block is dumped. More...
 
static void DebugOut (const char *pszLine)
 Static method to output a line of text for debugging purposes. More...
 
- Protected Member Functions inherited from __FCUserWindow
twobyte GetModalResult ()
 Returns the value that will be returned for a modal dialog.
 
- Protected Member Functions inherited from __FCBase
 __FCBase ()
 The constructor.
 

Detailed Description

Class for modeless and modal dialogs that are visually designed as a resource. This class is also a parent class to FCCustomWindow.

Member Enumeration Documentation

◆ EXECMODAL_RETURNS

The return codes for the ExecuteModal() method.

Lua-supported.

Enumerator
EXECMODAL_CLOSE 

The dialog box was closed.

EXECMODAL_OK 

The Ok button was pressed.

EXECMODAL_CANCEL 

The Cancel button was pressed.

Constructor & Destructor Documentation

◆ FCResourceWindow()

FCResourceWindow::FCResourceWindow ( int  resid)

The constructor for FCResourceWindow.

When run on Cocoa, this sets up the link object to the Cocoa code.

Member Function Documentation

◆ ClassName()

const char * FCResourceWindow::ClassName ( ) const
inlineoverridevirtual

Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class.

Lua-supported.

Reimplemented from __FCUserWindow.

Reimplemented in FCCustomWindow, and FCCustomLuaWindow.

◆ CloseWindow()

void FCResourceWindow::CloseWindow ( )
overridevirtual

Closes the window. This method is usually not overridden. Use methods like CanClose() instead.

Implements __FCUserWindow.

Reimplemented in FCCustomLuaWindow.

◆ ExecuteModal()

FCResourceWindow::EXECMODAL_RETURNS FCResourceWindow::ExecuteModal ( __FCUserWindow pParent = nullptr)

Executes a dialog box in a modal state.

(__FCUserWindow parent version).

During the modal state, the dialog box is the only window that can receive user input.

Lua-supported.

Parameters
pParent(optional on both C++ and Lua starting with v0.72) Pointer to the parent window object, or NULL. Defaults to NULL.
Returns
The modal result (the user action that ends the dialog), which typically is any of the EXECMODAL_ constants.

◆ ExecuteModal_EWND()

FCResourceWindow::EXECMODAL_RETURNS FCResourceWindow::ExecuteModal_EWND ( EWND  hParent)

Executes a dialog in a modal state (EWND version).

Returns
The modal result (the user action that ends the dialog), which typically is any of the EXECMODAL_ constants.

◆ GetWantsDpiAwareness()

bool FCResourceWindow::GetWantsDpiAwareness ( ) const
inline

Gets the HiDPI awareness state of the window.

HiDPI awareness only applies to the Windows 10 "Creators" version and later. If true, the window has monitor-level DPI awareness and redraws itself according to the new DPI when the DPI context changes. (This could be due the user changing the settings or to moving the window to a different monitor.) HiDPI awareness may be especially useful with the FCCtrlImage control.

See SetWantsDpiAwareness for information about when you can change this value and what its default value is.

On macOS this function always returns false.

Lua-supported (also as property) (0.64).

◆ InitWindow()

void FCResourceWindow::InitWindow ( )
overridevirtual

Inherited implementation of InitWindow().

Reimplemented from __FCUserWindow.

Reimplemented in FCCustomLuaWindow.

◆ SetWantsDpiAwareness()

void FCResourceWindow::SetWantsDpiAwareness ( bool   WINCODEstate)
inline

Sets the HiDPI awareness state of the window.

See comments at GetWantsDpiAwareness for more information about the HiDPI awareness state.

By default the value is false. However, any time you call FCCustomWindow::CreateImage, the value is set to true. (This is because HiDPI awareness is particularly useful for image scaling.) If you wish to opt out, you should set it to false after all calls to FCCustomWindow::CreateImage but before ExecuteModal or ShowModeless.

You can only change this value before the window is running. If you attempt to change it after the window is running, nothing happens. Normally you probably would not modify this value from the default. However, there may be contexts where the window is not performing well in DPI-changing situations, and this function allows you to opt in or out as needed.

If you are running on a version of Windows before Windows 10 Creators, setting this value may have no effect. On macOS this function does nothing.

Lua-supported (also as property) (0.64).

◆ ShowModeless()

void FCResourceWindow::ShowModeless ( __FCUserWindow pParent)

Displays the dialog box as a modeless window.

__FCUserWindow parent version.