Skip to content

Commit

Permalink
channel copy to
Browse files Browse the repository at this point in the history
  • Loading branch information
mvladic committed Feb 26, 2020
1 parent e8f06c5 commit c014785
Show file tree
Hide file tree
Showing 17 changed files with 120,077 additions and 118,765 deletions.
1,093 changes: 955 additions & 138 deletions modular-psu-firmware.eez-project

Large diffs are not rendered by default.

31 changes: 28 additions & 3 deletions src/eez/gui/action_impl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,34 @@ void action_edit_calibration_password() {
editCalibrationPassword();
}

void onChannelCopyDestinationSelected(uint16_t value) {
popPage();
const char *err = channel_dispatcher::copyChannelToChannel(g_channel->channelIndex, value);
if (err) {
errorMessage("Copying is not possible!", err);
}
}

void channelsEnumDefinition(data::DataOperationEnum operation, data::Cursor &cursor, data::Value &value) {
int channelIndex = cursor.i < g_channel->channelIndex ? cursor.i : cursor.i + 1;

if (operation == data::DATA_OPERATION_GET_VALUE) {
value = (uint8_t)channelIndex;
} else if (operation == data::DATA_OPERATION_GET_LABEL) {
if (channelIndex < CH_NUM) {
value = Value(channelIndex, VALUE_TYPE_CHANNEL_SHORT_LABEL_WITHOUT_COLUMN);
}
}
}

void action_ch_settings_copy() {
if (CH_NUM >= 3) {
pushSelectFromEnumPage(channelsEnumDefinition, -1, nullptr, onChannelCopyDestinationSelected, false, false);
} else {
onChannelCopyDestinationSelected(g_channel->channelIndex ? 0 : 1);
}
}

void action_ch_settings_calibration_wiz_start() {
calibration_wizard::start();
}
Expand Down Expand Up @@ -946,13 +974,10 @@ void themesEnumDefinition(data::DataOperationEnum operation, data::Cursor &curso
} else if (operation == data::DATA_OPERATION_GET_LABEL) {
if (cursor.i < getThemesCount()) {
value = getThemeName(cursor.i);
} else {
value = (const char *)NULL;
}
}
}


void onSetSelectedThemeIndex(uint16_t value) {
popPage();
persist_conf::setSelectedThemeIndex((uint8_t)value);
Expand Down
13 changes: 4 additions & 9 deletions src/eez/gui/app_context.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -241,18 +241,13 @@ void AppContext::pushPageOnNextIter(int pageId, Page *page) {
m_nextIterOperation = NEXT_ITER_OPERATION_PUSH;
}

void AppContext::pushSelectFromEnumPage(const data::EnumItem *enumDefinition, uint16_t currentValue,
bool (*disabledCallback)(uint16_t value),
void (*onSet)(uint16_t),
bool smallFont) {
m_selectFromEnumPage.init(enumDefinition, currentValue, disabledCallback, onSet, smallFont);
void AppContext::pushSelectFromEnumPage(const data::EnumItem *enumDefinition, uint16_t currentValue, bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t), bool smallFont, bool showRadioButtonIcon) {
m_selectFromEnumPage.init(enumDefinition, currentValue, disabledCallback, onSet, smallFont, showRadioButtonIcon);
pushPage(INTERNAL_PAGE_ID_SELECT_FROM_ENUM, &m_selectFromEnumPage);
}

void AppContext::pushSelectFromEnumPage(void (*enumDefinitionFunc)(data::DataOperationEnum operation, data::Cursor &cursor, data::Value &value),
uint16_t currentValue, bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t),
bool smallFont) {
m_selectFromEnumPage.init(enumDefinitionFunc, currentValue, disabledCallback, onSet, smallFont);
void AppContext::pushSelectFromEnumPage(void (*enumDefinitionFunc)(data::DataOperationEnum operation, data::Cursor &cursor, data::Value &value), uint16_t currentValue, bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t), bool smallFont, bool showRadioButtonIcon) {
m_selectFromEnumPage.init(enumDefinitionFunc, currentValue, disabledCallback, onSet, smallFont, showRadioButtonIcon);
pushPage(INTERNAL_PAGE_ID_SELECT_FROM_ENUM, &m_selectFromEnumPage);
}

Expand Down
8 changes: 2 additions & 6 deletions src/eez/gui/app_context.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,8 @@ class AppContext {

bool isActivePageInternal();

void pushSelectFromEnumPage(const data::EnumItem *enumDefinition, uint16_t currentValue,
bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t),
bool smallFont);
void pushSelectFromEnumPage(void (*enumDefinitionFunc)(data::DataOperationEnum operation, data::Cursor &cursor, data::Value &value),
uint16_t currentValue, bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t),
bool smallFont);
void pushSelectFromEnumPage(const data::EnumItem *enumDefinition, uint16_t currentValue, bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t), bool smallFont, bool showRadioButtonIcon);
void pushSelectFromEnumPage(void (*enumDefinitionFunc)(data::DataOperationEnum operation, data::Cursor &cursor, data::Value &value), uint16_t currentValue, bool (*disabledCallback)(uint16_t value), void (*onSet)(uint16_t), bool smallFont, bool showRadioButtonIcon);

void replacePage(int pageId, Page *page = nullptr);

Expand Down
Loading

0 comments on commit c014785

Please sign in to comment.