34#include <boost/format.hpp>
72 wxLC_REPORT|wxLC_SINGLE_SEL|wxSUNKEN_BORDER), mode_(MODE_NOMODE) {
87 int columns = GetColumnCount();
88 for (
int i = 0; i < columns; i++) {
108 for (
size_t i = 0; i < paths.size(); i++) {
112 wxFont boldFont = wxFont(10, wxROMAN, wxNORMAL, wxBOLD);
113 item.SetFont(boldFont);
116 int index = InsertItem(item);
146 for (
int i = 0; i < modules; i++) {
178 for (
int j = 0; j < operations; j++) {
183 wxFont boldFont = wxFont(10, wxROMAN, wxNORMAL, wxBOLD);
184 item.SetFont(boldFont);
187 int index = InsertItem(item);
203 const std::string& opName,
204 const std::string& modName,
205 const std::string& pathName) {
236 InsertItem(i, _T(
""));
248 InsertItem(i, _T(
""));
261 InsertItem(i, _T(
""));
265 SetItem(i, 1, index);
268 InsertItem(i, _T(
""));
274 InsertItem(i, _T(
""));
286 InsertItem(i, _T(
""));
298 set<int> canSwap = operand.
swap();
299 set<int>::iterator it = canSwap.begin();
302 while (it != canSwap.end()) {
304 opId.Prepend(_T(
"id: "));
305 if (it == canSwap.begin()) {
306 InsertItem(i, _T(
""));
312 InsertItem(i, _T(
""));
329 InsertItem(i, _T(
""));
336 InsertItem(i, _T(
""));
342 InsertItem(i, _T(
""));
539 if (GetSelectedItemCount() == 1) {
584 item = GetNextItem(item, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
586 SetItemState(item, 0, wxLIST_STATE_SELECTED);
589 wxPoint pos =
event.GetPosition();
590 int flags = wxLIST_HITTEST_ONITEMLABEL;
592 item = HitTest(pos, flags);
599 SetItemState(item, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
607 PopupMenu(menu, pos);
616 PopupMenu(menu, pos);
625 PopupMenu(menu, pos);
END_EVENT_TABLE() using namespace IDF
FUImplementationDialog::onAddExternalPort FUImplementationDialog::onDeleteExternalPort FUImplementationDialog::onArchPortSelection FUImplementationDialog::onArchPortActivation EVT_LIST_ITEM_SELECTED(ID_EXTERNAL_PORT_LIST, FUImplementationDialog::onExternalPortSelection) EVT_LIST_ITEM_ACTIVATED(ID_EXTERNAL_PORT_LIST
static std::vector< std::string > osalPaths()
static bool fileExists(const std::string fileName)
static const int DEFAULT_COLUMN_WIDTH
Default column width.
@ CMD_INFO_VIEW
Id for list events.
void insertOperationPropertyColumns()
void onDropDownMenu(wxMouseEvent &event)
std::string selectedOperation()
void operationView(const std::string &path, const std::string &mod)
void moduleView(const std::string &name)
std::string selectedModule()
int writeStaticPropertiesOfOperation(Operation *op)
void operationPropertyView(const std::string &opName, const std::string &modName, const std::string &pathName)
void onSelection(wxListEvent &event)
InfoMode mode_
Mode of the info view.
std::string selectedPath()
@ MODE_PROPERTY
Operation property view.
@ MODE_OPERATION
Operation View.
@ MODE_MODULE
Module view.
wxStatusBar * statusBar() const
static OSEdTextGenerator & instance()
@ TXT_ROW_NAME
Name row label.
@ TXT_COLUMN_OPERATIONS
Operations column header.
@ TXT_ROW_HAS_BEHAVIOR
Has behavior row label.
@ TXT_ROW_AFFECTS
Affects row label.
@ TXT_STATUS_MODULE_SELECTED
Status bar text when module is selected.
@ TXT_COLUMN_PROPERTY
Property column header.
@ TXT_ROW_DESCRIPTION
Description row label.
@ TXT_ROW_FALSE
False text.
@ TXT_COLUMN_SEARCH_PATHS
Search path column header.
@ TXT_ROW_TYPE
Type row label.
@ TXT_ROW_OUTPUT_OPERANDS
Output operands row label.
@ TXT_ROW_MEMORY_ADDRESS
Memory address row label.
@ TXT_COLUMN_MODULES
Module column header.
@ TXT_ROW_ID
Id row label.
@ TXT_STATUS_OPERATION_SELECTED
Status bar text when operation is selected.
@ TXT_COLUMN_OPERAND_VALUE
Operand value column header.
@ TXT_ROW_CAN_SWAP
Can swap row label.
@ TXT_ROW_CLOCKED
Clocked row label.
@ TXT_ROW_HAS_SIDE_EFFECTS
Has side effects row label.
@ TXT_COLUMN_VALUE
Value column header.
@ TXT_ROW_INPUTS
Inputs row label.
@ TXT_ROW_OUTPUTS
Outputs row label.
@ TXT_STATUS_PATH_SELECTED
Status bar text when path is selected.
@ TXT_ROW_INPUT_OPERANDS
Input operands row label.
@ TXT_ROW_READS_MEMORY
Reads memory row label.
@ TXT_ROW_CAN_TRAP
Can trap row label.
@ TXT_ROW_AFFECTED_BY
Affected by row label.
@ TXT_ROW_WRITES_MEMORY
Writes memory row label.
@ TXT_ROW_MEMORY_DATA
Memory data row label.
virtual const std::string & typeString() const
virtual bool isMemoryData() const
virtual bool isAddress() const
virtual const std::set< int > & swap() const
static bool isEffective(OperationModule &module, const std::string &name)
static Operation * operation(const std::string &path, const std::string &module, const std::string &oper)
static OperationIndex & operationIndex()
std::string operationName(int i, const OperationModule &om)
int operationCount(const OperationModule &om)
virtual bool readsMemory() const
virtual TCEString name() const
virtual int affectedByCount() const
virtual TCEString description() const
virtual TCEString affectedBy(unsigned int i) const
virtual bool canTrap() const
virtual bool hasSideEffects() const
virtual int affectsCount() const
virtual bool isClocked() const
virtual bool writesMemory() const
virtual int numberOfInputs() const
virtual bool canBeSimulated() const
virtual TCEString affects(unsigned int i) const
virtual int numberOfOutputs() const
virtual Operand & operand(int id) const
virtual boost::format text(int textId)
static wxString toWxString(const std::string &source)