Phoenix Logo

phoenix_title wx.lib.masked.timectrl.TimeCtrl

Masked control providing several time formats and manipulation of time values.


class_hierarchy Class Hierarchy

Inheritance diagram for class TimeCtrl:


method_summary Methods Summary

__init__ Default class constructor.
BindSpinButton This function binds an externally created spin button to the control,
ChangeValue Validating ChangeValue function for time values
GetBounds This function returns a two-tuple (min,max), indicating the
GetFormat  
GetMax Gets the minimum value of the control.
GetMin Gets the minimum value of the control.
GetMxDateTime Returns the value of the control as an mx.DateTime, with the date
GetValue This function returns the value of the display as a string by default,
GetWxDateTime This function is the conversion engine for TimeCtrl; it takes
IsInBounds Returns True if no value is specified and the current value
IsLimited Returns True if the control is currently limiting the
IsValid Can be used to determine if a given value would be a legal and
SetBounds This function is a convenience function for setting the min and max
SetFormat  
SetInsertionPoint This override records the specified position and associated cell before
SetLimited If called with a value of True, this function will cause the control
SetMax Sets the maximum value of the control. If a value of None
SetMin Sets the minimum value of the control. If a value of None
SetMxDateTime Because SetValue can take an mx.DateTime, (if DateTime is importable),
SetParameters Function providing access to the parameters governing TimeCtrl display
SetSelection  
SetValue Validating SetValue function for time values
SetWxDateTime Because SetValue can take a DateTime, this is now just an alias.

api Class API



class TimeCtrl(BaseMaskedTextCtrl)

Masked control providing several time formats and manipulation of time values.


Methods



__init__(self, parent, id=-1, value = '00:00:00', pos = wx.DefaultPosition, size = wx.DefaultSize, fmt24hr=False, spinButton = None, style = wx.TE_PROCESS_TAB, validator = wx.DefaultValidator, name = "time", **kwargs)

Default class constructor.

Parameters:
  • parent (wx.Window) – the window parent. Must not be None;
  • id (integer) – window identifier. A value of -1 indicates a default value;
  • value (string) – value to be shown;
  • pos (tuple or wx.Point) – the control position. A value of (-1, -1) indicates a default position, chosen by either the windowing system or wxPython, depending on platform;
  • size – the control size. A value of (-1, -1) indicates a default size, chosen by either the windowing system or wxPython, depending on platform;
  • fmt24hr (boolean) – True to use 24 hour format (sometimes called military format;
  • spinButton (SpinButton) – an instance of SpinButton or None;
  • style (integer) – the window style;
  • validator (wx.Validator) – this is mainly provided for data-transfer, as control does its own validation;
  • name (string) – the window name;


BindSpinButton(self, sb)

This function binds an externally created spin button to the control, so that up/down events from the button automatically change the control.

Parameters:sb (SpinButton) – an instance of SpinButton


ChangeValue(self, value)

Validating ChangeValue function for time values: This function will do dynamic type checking on the value argument, and convert DateTime, mxDateTime, or 12/24 format time string into the appropriate format string for the control.

No change event is fired by this method.

Parameters:value – the time value


GetBounds(self, as_string = False)

This function returns a two-tuple (min,max), indicating the current bounds of the control. Each value can be None if that bound is not set.



GetFormat(self)


GetMax(self, as_string = False)

Gets the minimum value of the control. If None, it will return None. Otherwise it will return the current minimum bound on the control, as a DateTime by default, or as a string if as_string argument is True.



GetMin(self, as_string = False)

Gets the minimum value of the control. If None, it will return None. Otherwise it will return the current minimum bound on the control, as a DateTime by default, or as a string if as_string argument is True.



GetMxDateTime(self, value=None)

Returns the value of the control as an mx.DateTime, with the date portion set to January 1, 1970.



GetValue(self, as_wxDateTime = False, as_mxDateTime = False, as_wxTimeSpan = False, as_mxDateTimeDelta = False)

This function returns the value of the display as a string by default, but supports return as a DateTime, mx.DateTime, TimeSpan, or mx.DateTimeDelta, if requested. (Evaluated in the order above– first one wins!)

Parameters:
  • as_wxDateTime (boolean) – return value as DateTime;
  • as_mxDateTime (boolean) – return value as mxDateTime;
  • as_wxTimeSpan (boolean) – return value as TimeSpan;
  • as_mxDateTimeDelta (boolean) – return value as mxDateTimeDelta;


GetWxDateTime(self, value=None)

This function is the conversion engine for TimeCtrl; it takes one of the following types:

  • time string
  • DateTime
  • TimeSpan
  • mxDateTime
  • mxDateTimeDelta

and converts it to a DateTime that always has Jan 1, 1970 as its date portion, so that range comparisons around values can work using DateTime built-in comparison function. If a value is not provided to convert, the string value of the control will be used. If the value is not one of the accepted types, a ValueError will be raised.



IsInBounds(self, value=None)

Returns True if no value is specified and the current value of the control falls within the current bounds. As the clock is a “circle”, both minimum and maximum bounds must be set for a value to ever be considered “out of bounds”. This function can also be called with a value to see if that value would fall within the current bounds of the given control.



IsLimited(self)

Returns True if the control is currently limiting the value to fall within any current bounds. Note: can be set even if there are no current bounds.



IsValid(self, value)

Can be used to determine if a given value would be a legal and in-bounds value for the control.

Parameters:value – value to check


SetBounds(self, min=None, max=None)

This function is a convenience function for setting the min and max values at the same time. The function only applies the maximum bound if setting the minimum bound is successful, and returns True only if both operations succeed.

Note

Leaving out an argument will remove the corresponding bound.

Parameters:
  • min (integer or None) – Minium value for the control
  • max (integer or None) – Minium value for the control


SetFormat(self, format)


SetInsertionPoint(self, pos)

This override records the specified position and associated cell before calling base class’ function. This is necessary to handle the optional spin button, because the insertion point is lost when the focus shifts to the spin button.



SetLimited(self, limited)

If called with a value of True, this function will cause the control to limit the value to fall within the bounds currently specified. If the control’s value currently exceeds the bounds, it will then be limited accordingly.

If called with a value of 0, this function will disable value limiting, but coloring of out-of-bounds values will still take place if bounds have been set for the control.

Parameters:limited (boolean) – define value limiting


SetMax(self, max=None)

Sets the maximum value of the control. If a value of None is provided, then the control will have no explicit maximum value. If the value specified is less than the current minimum value, then the function returns False and the maximum will not change from its current setting. On success, the function returns True.

If successful and the current value is greater than the new upper bound, if the control is limited the value will be automatically adjusted to this maximum value; if not limited, the value in the control will be colored as invalid.

Parameters:max (integer or None) – Minium value for the control


SetMin(self, min=None)

Sets the minimum value of the control. If a value of None is provided, then the control will have no explicit minimum value. If the value specified is greater than the current maximum value, then the function returns 0 and the minimum will not change from its current setting. On success, the function returns 1.

If successful and the current value is lower than the new lower bound, if the control is limited, the value will be automatically adjusted to the new minimum value; if not limited, the value in the control will be colored as invalid.

Parameters:min (integer or None) – Minium value for the control


SetMxDateTime(self, mxdt)

Because SetValue can take an mx.DateTime, (if DateTime is importable), this is now just an alias.



SetParameters(self, **kwargs)

Function providing access to the parameters governing TimeCtrl display and bounds.



SetSelection(self, sel_start, sel_to)


SetValue(self, value)

Validating SetValue function for time values: This function will do dynamic type checking on the value argument, and convert DateTime, mxDateTime, or 12/24 format time string into the appropriate format string for the control.

Parameters:value – the time value


SetWxDateTime(self, wxdt)

Because SetValue can take a DateTime, this is now just an alias.