Skip to content

Commit

Permalink
fix: item config/info oddities (cont.) (#2010)
Browse files Browse the repository at this point in the history
* fix (mvWindowAppItem): incl "on_close" in outDict

* ft/fix (get_item_info): incl ihreg as "handlers"

* fix (mvInputText): outDict typo in "multiline"

* fix (mvNodeEdit): inc delink_cb in oDict when None

* fix (mvFileExtension): incl "extension" in cfg out

* fix (mvDragPayload): incl d/d_data in cfg out

* fix (mvSubPlots): incl. columns in cfg out

Co-authored-by: Anthony Doupe <[email protected]>
  • Loading branch information
Atlamillias and Anthony Doupe authored Jan 14, 2023
1 parent ea2c43b commit 2f28168
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 11 deletions.
16 changes: 16 additions & 0 deletions src/mvContainers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,22 @@ DearPyGui::fill_configuration_dict(const mvDragPayloadConfig& inConfig, PyObject
{
if (outDict == nullptr)
return;

if (inConfig.dragData)
{
Py_XINCREF(inConfig.dragData);
PyDict_SetItemString(outDict, "drag_data", inConfig.dragData);
}
else
PyDict_SetItemString(outDict, "drag_data", GetPyNone());

if (inConfig.dropData)
{
Py_XINCREF(inConfig.dropData);
PyDict_SetItemString(outDict, "drop_data", inConfig.dropData);
}
else
PyDict_SetItemString(outDict, "drop_data", GetPyNone());
}

void
Expand Down
2 changes: 2 additions & 0 deletions src/mvFileExtension.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,6 @@ void mvFileExtension::getSpecificConfiguration(PyObject* dict)

PyDict_SetItemString(dict, "custom_text", mvPyObject(ToPyString(_customText)));
PyDict_SetItemString(dict, "color", mvPyObject(ToPyColor(_color)));
PyDict_SetItemString(dict, "extension", mvPyObject(ToPyString(_extension)) );

}
24 changes: 13 additions & 11 deletions src/mvPlotting.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ DearPyGui::set_data_source(mvAppItem& item, mvUUID dataSource, mvDragPointConfig
outConfig.value = *static_cast<std::shared_ptr<std::array<double, 4>>*>(item.getValue());
}

void
void
DearPyGui::set_data_source(mvAppItem& item, mvUUID dataSource, std::shared_ptr<std::vector<std::vector<double>>>& outValue)
{
if (dataSource == item.config.source) return;
Expand Down Expand Up @@ -744,7 +744,7 @@ DearPyGui::draw_drag_point(ImDrawList* drawlist, mvAppItem& item, mvDragPointCon
}
}

void
void
DearPyGui::draw_bar_series(ImDrawList* drawlist, mvAppItem& item, const mvBarSeriesConfig& config)
{

Expand Down Expand Up @@ -943,7 +943,7 @@ DearPyGui::draw_scatter_series(ImDrawList* drawlist, mvAppItem& item, const mvBa
//-----------------------------------------------------------------------------
// post draw
//-----------------------------------------------------------------------------
//
//
// pop font off stack
if (item.font)
ImGui::PopFont();
Expand Down Expand Up @@ -1011,7 +1011,7 @@ DearPyGui::draw_stair_series(ImDrawList* drawlist, mvAppItem& item, const mvBasi
//-----------------------------------------------------------------------------
// post draw
//-----------------------------------------------------------------------------
//
//
// pop font off stack
if (item.font)
ImGui::PopFont();
Expand Down Expand Up @@ -1079,7 +1079,7 @@ DearPyGui::draw_stem_series(ImDrawList* drawlist, mvAppItem& item, const mvBasic
//-----------------------------------------------------------------------------
// post draw
//-----------------------------------------------------------------------------
//
//
// pop font off stack
if (item.font)
ImGui::PopFont();
Expand Down Expand Up @@ -1150,7 +1150,7 @@ DearPyGui::draw_shade_series(ImDrawList* drawlist, mvAppItem& item, const mvBasi
//-----------------------------------------------------------------------------
// post draw
//-----------------------------------------------------------------------------
//
//
// pop font off stack
if (item.font)
ImGui::PopFont();
Expand Down Expand Up @@ -2137,7 +2137,7 @@ DearPyGui::draw_plot_annotation(ImDrawList* drawlist, mvAppItem& item, mvAnnotat

}

void
void
DearPyGui::set_positional_configuration(PyObject* inDict, mvBarSeriesConfig& outConfig)
{
if (!VerifyRequiredArguments(GetParsers()[GetEntityCommand(mvAppItemType::mvBarSeries)], inDict))
Expand Down Expand Up @@ -2435,7 +2435,7 @@ DearPyGui::set_configuration(PyObject* inDict, mvBarSeriesConfig& outConfig)

}

void
void
DearPyGui::set_configuration(PyObject* inDict, mvBasicSeriesConfig& outConfig)
{
if (inDict == nullptr)
Expand Down Expand Up @@ -2823,7 +2823,7 @@ DearPyGui::fill_configuration_dict(const mvPlotLegendConfig& inConfig, PyObject*

}

void
void
DearPyGui::fill_configuration_dict(const mvBarSeriesConfig& inConfig, PyObject* outDict)
{
if (outDict == nullptr)
Expand Down Expand Up @@ -2984,6 +2984,8 @@ DearPyGui::fill_configuration_dict(const mvSubPlotsConfig& inConfig, PyObject* o
return;

PyDict_SetItemString(outDict, "rows", mvPyObject(ToPyInt(inConfig.rows)));
PyDict_SetItemString(outDict, "columns", mvPyObject(ToPyInt(inConfig.cols)));
// maybe remove this on next minor release?
PyDict_SetItemString(outDict, "cols", mvPyObject(ToPyInt(inConfig.cols)));
PyDict_SetItemString(outDict, "row_ratios", mvPyObject(ToPyList(inConfig.row_ratios)));
PyDict_SetItemString(outDict, "column_ratios", mvPyObject(ToPyList(inConfig.col_ratios)));
Expand Down Expand Up @@ -3072,7 +3074,7 @@ DearPyGui::apply_template(const mvPlotLegendConfig& sourceConfig, mvPlotLegendCo
dstConfig.outside = sourceConfig.outside;
}

void
void
DearPyGui::apply_template(const mvBarSeriesConfig& sourceConfig, mvBarSeriesConfig& dstConfig)
{
dstConfig.value = sourceConfig.value;
Expand Down Expand Up @@ -3244,7 +3246,7 @@ DearPyGui::apply_template(const mvPlotConfig& sourceConfig, mvPlotConfig& dstCon
// Old Classes, in the process of removing OOP crap
//-----------------------------------------------------------------------------

void
void
mvDragPoint::setPyValue(PyObject* value)
{
std::vector<double> temp = ToDoubleVect(value);
Expand Down
14 changes: 14 additions & 0 deletions testing/simple_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,20 @@ def test_cfg_delink_callback_in_mvNodeEditor(self):
self.assertTrue("delink_callback" in cfg2)
self.assertTrue(cfg2.get("delink_callback", 0) is dl_cb)

def test_cfg_extensions_in_mvFileExtension(self):
with dpg.file_dialog():
ext = dpg.add_file_extension("*.*")
cfg = dpg.get_item_configuration(ext)
self.assertTrue("extension" in cfg)

def test_cfg_dragdropdata_in_mvDragPayload(self):
b = dpg.add_button(parent=self.wndw)
payload = dpg.add_drag_payload(parent=b)

cfg = dpg.get_item_configuration(payload)
self.assertTrue("drag_data" in cfg)
self.assertTrue("drop_data" in cfg)

def tearDown(self):
dpg.stop_dearpygui()
dpg.destroy_context()
Expand Down

0 comments on commit 2f28168

Please sign in to comment.