📄 tooldemo.c
字号:
return toolbar;
}
/*--------------------------------------------------------------------------*/
/* UIR Callbacks */
/*--------------------------------------------------------------------------*/
int CVICALLBACK About_OK (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2) {
switch (event) {
case EVENT_COMMIT:
RemovePopup (0);
break;
}
return 0;
}
int CVICALLBACK Quit (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2) {
switch (event) {
case EVENT_COMMIT:
QuitUserInterface (0);
break;
}
return 0;
}
void CVICALLBACK MenuCallback (int menuBar, int menuItem, void *callbackData, int panel){
switch(menuItem){
case MENU_HELP_ABOUT:
if ((hAboutPanel = LoadPanel (0, "tooldemo.uir", ABOUT)) < 0)
return;
InstallPopup (hAboutPanel);
break;
case MENU_FILE_NEW:
ShowAction (panel, "New File");
break;
case MENU_FILE_OPEN:
ShowAction (panel, "Open File");
break;
case MENU_FILE_SAVE:
ShowAction (panel, "Save File");
break;
case MENU_FILE_SAVEALL:
ShowAction (panel, "Save All");
break;
case MENU_EDIT_CUT:
ShowAction (panel, "Cut");
break;
case MENU_EDIT_COPY:
ShowAction (panel, "Copy");
break;
case MENU_EDIT_PASTE:
ShowAction (panel, "Paste");
break;
}
}
int CVICALLBACK GoStopCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch ((int)callbackData)
{
case 1:
ShowAction (hMainPanel, "Go");
break;
case 2:
ShowAction (hMainPanel, "Stop");
break;
}
return 0;
}
int CVICALLBACK SortByCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch ((int)callbackData)
{
case 1:
ShowAction (hMainPanel, "Sort By Name");
break;
case 2:
ShowAction (hMainPanel, "Sort By Date");
break;
case 3:
ShowAction (hMainPanel, "Sort By Size");
break;
case 4:
ShowAction (hMainPanel, "Sort By Type");
break;
}
return 0;
}
void CVICALLBACK MenuExit (int menuBar, int menuItem, void *callbackData, int panel)
{
QuitUserInterface (0);
}
int CVICALLBACK RingCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
int Index;
static char Label[256];
switch (event) {
case EVENT_COMMIT:
GetCtrlIndex (panel, control, &Index);
GetLabelFromIndex (panel, control, Index, Label);
ShowAction (hMainPanel, Label);
break;
}
return 0;
}
int CVICALLBACK StringCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
int Index;
static char Label[256];
switch (event) {
case EVENT_COMMIT:
GetCtrlVal (panel, control, Label);
ShowAction (hMainPanel, Label);
break;
}
return 0;
}
static void ShowAction (int parentPanel, char *action)
{
static int actionPanel = 0;
int top, left, height, width;
if (!actionPanel) {
actionPanel = LoadPanel (parentPanel, "tooldemo.uir", ACTION);
if (actionPanel <= 0) {
actionPanel = 0;
return;
}
SetPanelAttribute (actionPanel, ATTR_TITLEBAR_VISIBLE, 0);
SetPanelAttribute (actionPanel, ATTR_TITLEBAR_VISIBLE, 0);
}
SetCtrlVal (actionPanel, ACTION_ACTION, action);
GetCtrlBoundingRect (actionPanel, ACTION_ACTION, NULL, NULL, &height,
&width);
SetPanelAttribute (actionPanel, ATTR_HEIGHT, height);
SetPanelAttribute (actionPanel, ATTR_WIDTH, width);
SetPanelPos (actionPanel, VAL_AUTO_CENTER, VAL_AUTO_CENTER);
ResetTimer (actionPanel, ACTION_TIMER);
SetCtrlAttribute (actionPanel, ACTION_TIMER, ATTR_ENABLED, TRUE);
DisplayPanel (actionPanel);
}
int CVICALLBACK ActionTimerCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event) {
case EVENT_TIMER_TICK:
HidePanel (panel);
SetCtrlAttribute (panel, control, ATTR_ENABLED, FALSE);
break;
}
return 0;
}
int CVICALLBACK ActionPanelCallback (int panel, int event, void *callbackData,
int eventData1, int eventData2)
{
switch (event) {
case EVENT_PANEL_SIZE:
case EVENT_PANEL_MOVE:
case EVENT_GOT_FOCUS:
break;
default:
SetCtrlAttribute (panel, ACTION_TIMER, ATTR_ENABLED, FALSE);
HidePanel (panel);
break;
}
return (FALSE);
}
int CVICALLBACK ChangeAttributeCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
int intValue;
double doubleValue;
ToolbarType toolbar;
if (panel == hMainPanel)
toolbar = gToolbar;
if (!toolbar)
return 0;
switch (event) {
case EVENT_COMMIT:
switch (control)
{
case PANEL_STYLE:
GetCtrlVal(panel, control, &intValue);
Toolbar_SetAttribute (toolbar, TOOLBAR_ATTR_STYLE,
intValue?TOOLBAR_VAL_FLAT:TOOLBAR_VAL_RAISED);
break;
case PANEL_SCALE:
GetCtrlVal(panel, control, &doubleValue);
Toolbar_SetAttribute (toolbar, TOOLBAR_ATTR_SCALING_FACTOR,
doubleValue);
break;
case PANEL_RESIZE:
GetCtrlVal(panel, control, &intValue);
SetPanelAttribute(panel, ATTR_SCALE_CONTENTS_ON_RESIZE,
intValue);
/* SetPanelAttribute (panel, ATTR_SIZABLE, intValue); */
Toolbar_SetAttribute (toolbar, TOOLBAR_ATTR_AUTO_SCALING,
(intValue)?TOOLBAR_VAL_WHEN_PANEL_RESCALES:0);
break;
}
break;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -