Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
#4606: Add Reload Models button to ModelSelector.
  • Loading branch information
codereader committed Aug 17, 2017
1 parent 454fd65 commit 26ab3c3
Show file tree
Hide file tree
Showing 4 changed files with 114 additions and 1 deletion.
90 changes: 89 additions & 1 deletion install/ui/modelselector.fbp
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<wxFormBuilder_Project>
<FileVersion major="1" minor="11" />
<FileVersion major="1" minor="13" />
<object class="Project" expanded="1">
<property name="class_decoration"></property>
<property name="code_generation">C++</property>
Expand Down Expand Up @@ -616,6 +616,94 @@
<property name="name">bSizer6</property>
<property name="orient">wxHORIZONTAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="1">
<property name="border">24</property>
<property name="flag">wxRIGHT</property>
<property name="proportion">0</property>
<object class="wxButton" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default">0</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_CANCEL</property>
<property name="label">Reload Models</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">ModelSelectorReloadButton</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnButtonClick"></event>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">6</property>
<property name="flag"></property>
Expand Down
9 changes: 9 additions & 0 deletions install/ui/modelselector.xrc
Expand Up @@ -71,6 +71,15 @@
<border>12</border>
<object class="wxBoxSizer">
<orient>wxHORIZONTAL</orient>
<object class="sizeritem">
<option>0</option>
<flag>wxRIGHT</flag>
<border>24</border>
<object class="wxButton" name="ModelSelectorReloadButton">
<label>Reload Models</label>
<default>0</default>
</object>
</object>
<object class="sizeritem">
<option>0</option>
<flag></flag>
Expand Down
15 changes: 15 additions & 0 deletions radiant/ui/modelselector/ModelSelector.cpp
Expand Up @@ -82,6 +82,9 @@ ModelSelector::ModelSelector() :
findNamedObject<wxButton>(this, "ModelSelectorCancelButton")->Connect(
wxEVT_BUTTON, wxCommandEventHandler(ModelSelector::onCancel), NULL, this);

findNamedObject<wxButton>(this, "ModelSelectorReloadButton")->Connect(
wxEVT_BUTTON, wxCommandEventHandler(ModelSelector::onReloadModels), NULL, this);

Connect(wxEVT_CLOSE_WINDOW, wxCloseEventHandler(ModelSelector::_onDeleteEvent), NULL, this);

FitToScreen(0.8f, 0.8f);
Expand Down Expand Up @@ -204,7 +207,10 @@ void ModelSelector::onTreeStorePopulationFinished(wxutil::TreeModel::PopulationF

// Set the flag, we're done
_populated = true;
_populator.reset();
_progressItem = wxDataViewItem();

findNamedObject<wxButton>(this, "ModelSelectorReloadButton")->Enable(true);
}

void ModelSelector::preSelectModel()
Expand Down Expand Up @@ -442,4 +448,13 @@ void ModelSelector::onCancel(wxCommandEvent& ev)
cancelDialog();
}

void ModelSelector::onReloadModels(wxCommandEvent& ev)
{
findNamedObject<wxButton>(this, "ModelSelectorReloadButton")->Enable(false);

_populated = false;

populateModels();
}

} // namespace ui
1 change: 1 addition & 0 deletions radiant/ui/modelselector/ModelSelector.h
Expand Up @@ -146,6 +146,7 @@ class ModelSelector :
// wx callbacks
void onOK(wxCommandEvent& ev);
void onCancel(wxCommandEvent& ev);
void onReloadModels(wxCommandEvent& ev);
void onTreeStorePopulationProgress(wxutil::TreeModel::PopulationProgressEvent& ev);
void onTreeStorePopulationFinished(wxutil::TreeModel::PopulationFinishedEvent& ev);

Expand Down

0 comments on commit 26ab3c3

Please sign in to comment.