46 #include <wx/bitmap.h>
48 #include <wx/stattext.h>
49 #include <wx/textctrl.h>
50 #include <wx/choice.h>
88 wxWindowID
id,
const wxPoint& pos,
const wxSize&
size,
long style ) :
89 m_Date(the_date), m_MinYear(min_year), m_YearRange(
range)
104 SetExtraStyle(wxWS_EX_BLOCK_EVENTS);
105 wxPanel::Create( parent,
id, pos,
size, style );
110 GetSizer()->SetSizeHints(
this);
152 wxFlexGridSizer* itemFlexGridSizer2 =
new wxFlexGridSizer(0, 3, 0, 0);
153 itemPanel1->SetSizer(itemFlexGridSizer2);
155 wxStaticText* itemStaticText3 =
new wxStaticText( itemPanel1, wxID_STATIC,
_(
"Year"), wxDefaultPosition, wxDefaultSize, 0 );
156 itemFlexGridSizer2->Add(itemStaticText3, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
158 wxStaticText* itemStaticText4 =
new wxStaticText( itemPanel1, wxID_STATIC,
_(
"Month"), wxDefaultPosition, wxDefaultSize, 0 );
159 itemFlexGridSizer2->Add(itemStaticText4, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
161 wxStaticText* itemStaticText5 =
new wxStaticText( itemPanel1, wxID_STATIC,
_(
"Day"), wxDefaultPosition, wxDefaultSize, 0 );
162 itemFlexGridSizer2->Add(itemStaticText5, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
165 itemFlexGridSizer2->Add(
m_YearCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
167 wxArrayString m_MonthCtrlStrings;
168 m_MonthCtrlStrings.Add(wxEmptyString);
169 m_MonthCtrlStrings.Add(
_(
"Jan"));
170 m_MonthCtrlStrings.Add(
_(
"Feb"));
171 m_MonthCtrlStrings.Add(
_(
"Mar"));
172 m_MonthCtrlStrings.Add(
_(
"Apr"));
173 m_MonthCtrlStrings.Add(
_(
"May"));
174 m_MonthCtrlStrings.Add(
_(
"Jun"));
175 m_MonthCtrlStrings.Add(
_(
"Jul"));
176 m_MonthCtrlStrings.Add(
_(
"Aug"));
177 m_MonthCtrlStrings.Add(
_(
"Sep"));
178 m_MonthCtrlStrings.Add(
_(
"Oct"));
179 m_MonthCtrlStrings.Add(
_(
"Nov"));
180 m_MonthCtrlStrings.Add(
_(
"Dec"));
182 itemFlexGridSizer2->Add(
m_MonthCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
185 itemFlexGridSizer2->Add(
m_DayCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
192 if (
m_Date->SetStd().IsSetYear()) {
195 if (
m_Date->SetStd().IsSetMonth()) {
201 if (
m_Date->SetStd().IsSetDay()) {
214 wxPanel::SetToolTip(tipString);
222 if (
m_Date->SetStd().IsSetYear()) {
225 if (
m_Date->SetStd().IsSetMonth()) {
231 if (
m_Date->SetStd().IsSetDay()) {
234 if (!wxPanel::TransferDataToWindow())
244 if (!wxPanel::TransferDataFromWindow())
260 m_Date->SetStd().ResetDay();
263 m_Date->SetStd().ResetMonth();
264 m_Date->SetStd().ResetDay();
355 else if (dmy.size() == 2)
360 else if (dmy.size() == 3)
366 wxPanel::TransferDataToWindow();
bool no_date(Parser::EFormat format, const TSeqdescList &descrs)
void SetToolTip(const wxString &tipString)
CRef< objects::CDate > GetDate() const
CFlexibleDatePanel()
Constructors.
wxIcon GetIconResource(const wxString &name)
Retrieves icon resources.
static bool ShowToolTips()
Should we show tooltips?
void Init()
Initialises member variables.
void SetDate(const objects::CDate &a_date)
CRef< objects::CDate > m_Date
bool TransferDataFromWindow()
void CreateControls()
Creates the controls and sizers.
bool Create(wxWindow *parent, wxWindowID id=10042, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(400, 300), long style=wxTAB_TRAVERSAL)
Creation.
wxBitmap GetBitmapResource(const wxString &name)
Retrieves bitmap resources.
bool TransferDataToWindow()
~CFlexibleDatePanel()
Destructor.
static bool s_IsDateEmpty(CRef< CDate > a_date)
#define ID_FLEXIBLEDATE_DAY
#define ID_FLEXIBLEDATE_MONTH
#define ID_FLEXIBLEDATE_YEAR
virtual void Assign(const CSerialObject &source, ESerialRecursionMode how=eRecursive)
Set object to copy of another one.
void Reset(void)
Reset reference object.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static int StringToInt(const CTempString str, TStringToNumFlags flags=0, int base=10)
Convert string to int.
static list< string > & Split(const CTempString str, const CTempString delim, list< string > &arr, TSplitFlags flags=0, vector< SIZE_TYPE > *token_pos=NULL)
Split a string using specified delimiters.
bool IsSetYear(void) const
full year (including 1900) Check if a value has been assigned to Year data member.
bool IsStd(void) const
Check if variant Std is selected.
bool IsSetDay(void) const
day of month (1-31) Check if a value has been assigned to Day data member.
bool IsSetMonth(void) const
month (1-12) Check if a value has been assigned to Month data member.
const TStd & GetStd(void) const
Get the variant data.
range(_Ty, _Ty) -> range< _Ty >
const struct ncbi::grid::netcache::search::fields::SIZE size