📄 ini.c
字号:
status = Ini_GetInt (myInifile, sectionName, itemName, integerValue); status = Ini_GetDouble (myInifile, sectionName, itemName, doubleValue); status = Ini_GetPointerToRawString (myInifile, sectionName, itemName, ptrToString); status = Ini_PutBoolean (myInifile, sectionName, itemName, booleanValue); status = Ini_PutInt (myInifile, sectionName, itemName, integerValue); status = Ini_PutDouble (myInifile, sectionName, itemName, doubleValue); status = Ini_PutRawString (myInifile, sectionName, itemName, stringValue);*/ return 0;}/*--------------------------------------------------------------------------*//* NewSection *//*--------------------------------------------------------------------------*/int CVICALLBACK NewSection (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ char userSectionName[MAX_NAME_SIZE]; char *sectionName; int section, sections, found; switch (event) { case EVENT_COMMIT: userSectionName[0] = 0; if ((GenericMessagePopup ("New Section", "Please specify name of new section", "OK", "Cancel", "", userSectionName, MAX_NAME_SIZE-1, 0, VAL_GENERIC_POPUP_INPUT_STRING, VAL_GENERIC_POPUP_BTN1, VAL_GENERIC_POPUP_BTN2)==VAL_GENERIC_POPUP_BTN1) && (userSectionName[0]!=0) ) { if (Ini_SectionExists (myInifile, userSectionName)) MessagePopup("Inifile","Error, section already exists"); else { /* We have to add a dummy item and then remove to create a new section */ Ini_PutString (myInifile, userSectionName, "Dummy_tag_name", ""); Ini_RemoveItem (myInifile, userSectionName, "Dummy_tag_name"); changesMade = 1; } sections = Ini_NumberOfSections (myInifile); found = 0; for (section=1;(section<=sections) && (!found);section++) { if ((Ini_NthSectionName (myInifile, section, §ionName)>0) && (!strcmp(sectionName, userSectionName)) ) found = section; } if (found) { section = found; sections = Ini_NumberOfSections (myInifile); SetCtrlAttribute(panelHandle, PANEL_SECTION, ATTR_MAX_VALUE, sections); SetCtrlVal(panelHandle, PANEL_SECTION, section); UpdateUIR(); } } break; } return 0;}/*--------------------------------------------------------------------------*//* DeleteSection *//*--------------------------------------------------------------------------*/int CVICALLBACK DeleteSection (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ char sectionName[MAX_NAME_SIZE]; switch (event) { case EVENT_COMMIT: sectionName[0] = 0; GetCtrlVal(panelHandle, PANEL_SECTION_NAME, sectionName); if (!Ini_RemoveSection (myInifile, sectionName)) MessagePopup("Inifile","Error removing item from section"); UpdateUIR(); break; } return 0;}/*--------------------------------------------------------------------------*//* ChangeCurrentSection *//*--------------------------------------------------------------------------*/int CVICALLBACK ChangeCurrentSection (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: UpdateUIR(); break; } return 0;}/*--------------------------------------------------------------------------*//* ChangeSectionName *//*--------------------------------------------------------------------------*/int CVICALLBACK ChangeSectionName (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: break; } return 0;}/*--------------------------------------------------------------------------*//* NewItem *//*--------------------------------------------------------------------------*/int CVICALLBACK NewItem (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ char sectionName[MAX_NAME_SIZE]; char userItemName[MAX_NAME_SIZE]; char *itemName; int item, items, found; switch (event) { case EVENT_COMMIT: userItemName[0] = 0; if ((GenericMessagePopup ("New Section", "Please specify name of new item", "OK", "Cancel", "", userItemName, MAX_NAME_SIZE-1, 0, VAL_GENERIC_POPUP_INPUT_STRING, VAL_GENERIC_POPUP_BTN1, VAL_GENERIC_POPUP_BTN2)==VAL_GENERIC_POPUP_BTN1) && (userItemName[0]!=0) ) { GetCtrlVal(panelHandle, PANEL_SECTION_NAME, sectionName); if (Ini_ItemExists (myInifile, sectionName, userItemName)) MessagePopup("Inifile","Error, item already exists"); else { Ini_PutString (myInifile, sectionName, userItemName, ""); changesMade = 1; } items = Ini_NumberOfItems (myInifile, sectionName); found = 0; for (item=1;(item<=items) && (!found);item++) { if ((Ini_NthItemName (myInifile, sectionName, item, &itemName)>0) && (!strcmp(itemName, userItemName)) ) found = item; } if (found) { item = found; items = Ini_NumberOfItems (myInifile, sectionName); SetCtrlAttribute(panelHandle, PANEL_ITEM, ATTR_MAX_VALUE, items); SetCtrlVal(panelHandle, PANEL_ITEM, item); UpdateUIR(); } } break; } return 0;}/*--------------------------------------------------------------------------*//* DeleteItem *//*--------------------------------------------------------------------------*/int CVICALLBACK DeleteItem (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ char sectionName[MAX_NAME_SIZE]; char itemName[MAX_NAME_SIZE]; switch (event) { case EVENT_COMMIT: sectionName[0] = 0; itemName[0] = 0; GetCtrlVal(panelHandle, PANEL_SECTION_NAME, sectionName); GetCtrlVal(panelHandle, PANEL_ITEM_NAME, itemName); if (!Ini_RemoveItem (myInifile, sectionName, itemName)) MessagePopup("Inifile","Error removing item from section"); UpdateUIR(); break; } return 0;}/*--------------------------------------------------------------------------*//* ChangeCurrentItem *//*--------------------------------------------------------------------------*/int CVICALLBACK ChangeCurrentItem (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: UpdateUIR(); break; } return 0;}/*--------------------------------------------------------------------------*//* ChangeItemName *//*--------------------------------------------------------------------------*/int CVICALLBACK ChangeItemName (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: break; } return 0;}/*--------------------------------------------------------------------------*//* ChangeItemType *//*--------------------------------------------------------------------------*/int CVICALLBACK ChangeItemType (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: break; } return 0;}/*--------------------------------------------------------------------------*//* ChangeItemValue *//*--------------------------------------------------------------------------*/int CVICALLBACK ChangeItemValue (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: break; } return 0;}/*--------------------------------------------------------------------------*//* HelpCallback *//*--------------------------------------------------------------------------*/int CVICALLBACK HelpCallback (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_RIGHT_CLICK: case EVENT_COMMIT: MessagePopup ("INIFILE Example", HELP_MSG); break; break; } return 0;}/*--------------------------------------------------------------------------*//* QuitCallback *//*--------------------------------------------------------------------------*/int CVICALLBACK QuitCallback (int panel, int control, int event, void *callbackData, int eventData1, int eventData2){ switch (event) { case EVENT_COMMIT: QuitUserInterface (0); break; } return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -