本文整理汇总了C++中WndProperty::SetDataField方法的典型用法代码示例。如果您正苦于以下问题:C++ WndProperty::SetDataField方法的具体用法?C++ WndProperty::SetDataField怎么用?C++ WndProperty::SetDataField使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WndProperty
的用法示例。
在下文中一共展示了WndProperty::SetDataField方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Add
WndProperty *
RowFormWidget::AddFile(const TCHAR *label, const TCHAR *help,
const char *registry_key, const TCHAR *filters,
FileType file_type,
bool nullable)
{
WndProperty *edit = Add(label, help);
auto *df = new FileDataField();
df->SetFileType(file_type);
edit->SetDataField(df);
if (nullable)
df->AddNull();
df->ScanMultiplePatterns(filters);
if (registry_key != nullptr) {
const auto path = Profile::GetPath(registry_key);
if (!path.IsNull())
df->Lookup(path);
}
edit->RefreshDisplay();
return edit;
}
示例2: Add
WndProperty *
RowFormWidget::AddFileReader(const TCHAR *label, const TCHAR *help,
const TCHAR *registry_key, const TCHAR *filters,
bool nullable)
{
WndProperty *edit = Add(label, help);
DataFieldFileReader *df = new DataFieldFileReader(NULL);
edit->SetDataField(df);
if (nullable)
df->AddNull();
size_t length;
while ((length = _tcslen(filters)) > 0) {
df->ScanDirectoryTop(filters);
filters += length + 1;
}
TCHAR path[MAX_PATH];
if (Profile::GetPath(registry_key, path))
df->Lookup(path);
edit->RefreshDisplay();
return edit;
}
示例3: Add
void
RowFormWidget::AddReadOnly(const TCHAR *label, const TCHAR *help,
bool value)
{
WndProperty *edit = Add(label, help, true);
DataFieldBoolean *df = new DataFieldBoolean(value, _("On"), _("Off"));
edit->SetDataField(df);
}
示例4: Add
void
RowFormWidget::AddReadOnly(const TCHAR *label, const TCHAR *help,
const TCHAR *display_format,
double value)
{
WndProperty *edit = Add(label, help, true);
DataFieldFloat *df = new DataFieldFloat(display_format, display_format,
0, 0, value, 1, false);
edit->SetDataField(df);
}
示例5: assert
WndProperty *
RowFormWidget::AddEnum(const TCHAR *label, const TCHAR *help,
const StaticEnumChoice *list, unsigned value,
DataField::DataAccessCallback callback)
{
assert(list != NULL);
WndProperty *edit = Add(label, help);
DataFieldEnum *df = new DataFieldEnum(callback);
if (list[0].help != NULL)
df->EnableItemHelp(true);
df->AddChoices(list);
df->Set(value);
edit->SetDataField(df);
return edit;
}
示例6: assert
WndProperty *
RowFormWidget::AddEnum(const TCHAR *label, const TCHAR *help,
const StaticEnumChoice *list, unsigned value,
DataFieldListener *listener)
{
assert(list != nullptr);
WndProperty *edit = Add(label, help);
DataFieldEnum *df = new DataFieldEnum(listener);
if (list[0].help != nullptr)
df->EnableItemHelp(true);
df->AddChoices(list);
df->Set(value);
edit->SetDataField(df);
return edit;
}
示例7: edit_style
//.........这里部分代码省略.........
if (IsEmbedded() || Layout::scale_1024 < 2048)
/* sunken edge doesn't fit well on the tiny screen of an
embedded device */
edit_style.Border();
else
edit_style.SunkenEdge();
if (multi_line) {
edit_style.multiline();
edit_style.VerticalScroll();
}
WndProperty *property;
window = property = new WndProperty(parent, *xml_dialog_look, caption, rc,
caption_width, style, edit_style,
data_notify_callback);
// Set the help function event callback
property->SetOnHelpCallback(help_callback);
// Load the help text
property->SetHelpText(StringToStringDflt(node.getAttribute(_T("Help")),
NULL));
// If the control has (at least) one DataField child control
const XMLNode *data_field_node = node.getChildNode(_T("DataField"));
if (data_field_node != NULL) {
// -> Load the first DataField control
DataField *data_field =
LoadDataField(*data_field_node, lookup_table);
if (data_field != NULL)
// Tell the Property control about the DataField control
property->SetDataField(data_field);
}
} else if (StringIsEqual(node.getName(), _T("TextEdit"))) {
// Determine whether the control is multiline or readonly
bool multi_line = StringToIntDflt(node.getAttribute(_T("MultiLine")), 0);
bool read_only = StringToIntDflt(node.getAttribute(_T("ReadOnly")), 0);
EditWindowStyle edit_style(style);
if (read_only)
edit_style.read_only();
else
edit_style.TabStop();
if (IsEmbedded() || Layout::scale_1024 < 2048)
/* sunken edge doesn't fit well on the tiny screen of an
embedded device */
edit_style.Border();
else
edit_style.SunkenEdge();
if (multi_line) {
edit_style.multiline();
edit_style.VerticalScroll();
}
EditWindow *edit;
window = edit = new EditWindow();
edit->set(parent, pos.x, pos.y, size.cx, size.cy, edit_style);
edit->InstallWndProc();
edit->set_font(*xml_dialog_look->text_font);
// ButtonControl (WndButton)
示例8: bstyle
//.........这里部分代码省略.........
edit_style.border();
else
edit_style.sunken_edge();
if (MultiLine) {
edit_style.multiline();
edit_style.vscroll();
}
window = W = new WndProperty(parent, Caption,
pos.x, pos.y, size.cx, size.cy,
CaptionWidth, background_color,
style, edit_style,
DataNotifyCallback);
// Set the fore- and background color
LoadColors(*W, node);
// Set the help function event callback
W->SetOnHelpCallback(OnHelpCallback);
// Load the help text
W->SetHelpText(StringToStringDflt(node.getAttribute(_T("Help")), _T("")));
// If the control has (at least) one DataField child control
if (node.nChildNode(_T("DataField")) > 0){
// -> Load the first DataField control
DataField *data_field =
LoadDataField(node.getChildNode(_T("DataField"), 0),
LookUpTable, eDialogStyle);
if (data_field != NULL)
// Tell the Property control about the DataField control
W->SetDataField(data_field);
}
// ButtonControl (WndButton)
} else if (_tcscmp(node.getName(), _T("Button")) == 0) {
// Determine ClickCallback function
WndButton::ClickNotifyCallback_t ClickCallback =
(WndButton::ClickNotifyCallback_t)
GetCallBack(LookUpTable, node, _T("OnClick"));
// Create the ButtonControl
ButtonWindowStyle bstyle(style);
bstyle.tab_stop();
bstyle.multiline();
window = new WndButton(parent, Caption,
pos.x, pos.y, size.cx, size.cy,
bstyle, ClickCallback);
} else if (_tcscmp(node.getName(), _T("CheckBox")) == 0) {
// Determine ClickCallback function
CheckBoxControl::ClickNotifyCallback_t ClickCallback =
(CheckBoxControl::ClickNotifyCallback_t)
GetCallBack(LookUpTable, node, _T("OnClick"));
// Create the CheckBoxControl
style.tab_stop();
window = new CheckBoxControl(parent, Caption,
pos.x, pos.y, size.cx, size.cy,
style,