⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 geardesignui.c

📁 Pro.TOOLKIT.Wildfire插件设计.配套光盘-141M.zip
💻 C
📖 第 1 页 / 共 3 页
字号:
  ProTKGDUISelectNext (g_ptr, step);  return;}/*=============================================================*\  Function: 	ProTKGDUIHubInputAction  Purpose:	Hub params input action function\*=============================================================*/void ProTKGDUIHubInputAction (char* dialog,				 char *component,				 ProAppData appdata){  GearParam* g_ptr = (GearParam*)appdata;  ProTKGDUIHubFromUIUpdate (g_ptr);  ProTKGDUIHubUIUpdate (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIBackplateInputAction  Purpose:	Backplate params input action function\*=============================================================*/void ProTKGDUIBackplateInputAction (char* dialog,				 char *component,				 ProAppData appdata){  GearParam* g_ptr = (GearParam*)appdata;  ProTKGDUIBackplateFromUIUpdate (g_ptr);  ProTKGDUIBackplateUIUpdate (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUITeethInputAction  Purpose:	Teeth params input action function\*=============================================================*/void ProTKGDUITeethInputAction (char* dialog,				 char *component,				 ProAppData appdata){  GearParam* g_ptr = (GearParam*)appdata;  ProTKGDUITeethFromUIUpdate (g_ptr);  ProTKGDUITeethUIUpdate (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUITeethUpdateAction  Purpose:	Teeth params update action function (spinbox)\*=============================================================*/void ProTKGDUITeethUpdateAction (char* dialog,				 char *component,				 ProAppData appdata){  GearParam* g_ptr = (GearParam*)appdata;    ProTKGDUITeethFromUIUpdate (g_ptr);  ProTKGDUITeethUIUpdate (g_ptr);} /*=============================================================*\  Function: 	ProTKGDUIIncludeKeywayAction  Purpose:	Include keyway checkbox  action function\*=============================================================*/void ProTKGDUIIncludeKeywayAction (char* dialog,				 char *component,				 ProAppData appdata){  ProBoolean keyway;  GearParam* g_ptr = (GearParam*)appdata;     ProUICheckbuttonGetState (GD_UI_MAIN, GD_UI_INCLUDE_KEYWAY, &keyway);  ProTKGDUIKeywayUIUpdate (g_ptr, keyway);}/*=============================================================*\  Function: 	ProTKGDUIIncludeKeyAction  Purpose:	Include key checkbox action function\*=============================================================*/void ProTKGDUIIncludeKeyAction (char* dialog,				 char *component,				 ProAppData appdata){  ProBoolean key;  GearParam* g_ptr = (GearParam*)appdata;     ProUICheckbuttonGetState (GD_UI_MAIN, GD_UI_INCLUDE_KEY, &key);  ProTKGDUIKeyUIUpdate (g_ptr, key);}/*=============================================================*\  Function: 	ProTKGDUIIncludeBacknotchAction  Purpose:	Include backnotch checkbox action function\*=============================================================*/void ProTKGDUIIncludeBacknotchAction (char* dialog,				 char *component,				 ProAppData appdata){  ProBoolean bn;  GearParam* g_ptr = (GearParam*)appdata;     ProUICheckbuttonGetState (GD_UI_MAIN, GD_UI_INCLUDE_BN, &bn);  ProTKGDUIBacknotchUIUpdate (g_ptr, bn);}/*=============================================================*\  Function: 	ProTKGDUIToggleTypeAction  Purpose:	Action function for menu radiogroup (type)\*=============================================================*/void ProTKGDUIToggleTypeAction (char* dialog,				 char *component,				 ProAppData appdata){  GearParam* g_ptr = (GearParam*)appdata;  int n_sels;  char** sel_names;  int new_type;    ProUIRadiogroupSelectednamesGet (GD_UI_MAIN, component,				   &n_sels, &sel_names);  if (strcmp (sel_names[0], GD_UI_GROUP_SPUR) == 0)    new_type = SPUR_GEAR;  else    new_type = RING_GEAR;  ProStringarrayFree (sel_names, n_sels);  if (new_type == g_ptr->gear_type)    return;  g_ptr->gear_type = new_type;  ProTKGDUIToggleType (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIDeleteAction  Purpose:	Delete button action function\*=============================================================*/void  ProTKGDUIDeleteAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    ProUserDeleteDesign (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIModifyAction  Purpose:	Modify button action function\*=============================================================*/void  ProTKGDUIModifyAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    ProUserModifyDesign (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIRegenerateAction  Purpose:	Regenerate button action function\*=============================================================*/void  ProTKGDUIRegenerateAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    ProUserRegenerate (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIMaterialAction  Purpose:	Set Material button action function\*=============================================================*/void  ProTKGDUIMaterialAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    ProUserMaterial (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIViewSelectAction  Purpose:	Saved view selection action function\*=============================================================*/void  ProTKGDUIViewSelectAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    char** names;    int n_names;    ProName new_view;    ProView view;        ProUIRadiogroupSelectednamesGet (GD_UI_MAIN,				     GD_UI_TOOL_VIEW_CHOICE_M,				     &n_names, &names);    ProStringToWstring (new_view, names [0]);    ProStringarrayFree (names, n_names);    ProViewRetrieve(g_ptr->model, new_view, &view);}/*=============================================================*\  Function: 	ProTKGDUIViewSelectAction  Purpose:	Utility: update contents of the saved views radiogroup\*=============================================================*/void ProTKGDUIViewNamesUpdate (GearParam* g_ptr){  ProError err;  ProName* names;  int num_views;  int ii, len;  char** new_names;  wchar_t** new_labels;  err = ProViewNamesGet(g_ptr->model, &names, NULL, &num_views);  if (err != PRO_TK_NO_ERROR || num_views<=0)    {      ProUICascadebuttonDisable (GD_UI_MAIN,				 GD_UI_TOOL_SAVEDVIEWS_CASCADE_M);    }	  else    {      ProUICascadebuttonEnable (GD_UI_MAIN,				GD_UI_TOOL_SAVEDVIEWS_CASCADE_M);          new_names = (char**) calloc (num_views, sizeof (char*));      new_labels = (wchar_t**) calloc (num_views, sizeof (wchar_t*));      for (ii = 0; ii < num_views; ii++)	{	  len = ProUtilWstrLen (names [ii]) + 1;	  new_names [ii] = (char*) calloc (len, sizeof (char));	  ProWstringToString (new_names [ii], names [ii]);	  new_labels [ii] = (wchar_t*) calloc (len,  sizeof (wchar_t));	  ProUtilWstrcpy (new_labels [ii], names [ii]);	}      ProUIRadiogroupNamesSet (GD_UI_MAIN, GD_UI_TOOL_VIEW_CHOICE_M,			       num_views, new_names);      ProUIRadiogroupLabelsSet (GD_UI_MAIN, GD_UI_TOOL_VIEW_CHOICE_M,			       num_views, new_labels);      for (ii = 0; ii < num_views; ii++)	{	  free (new_names [ii]);	  free (new_labels [ii]);	}      free (new_names);      free (new_labels);      ProArrayFree ((ProArray*)&names);    }}/*=============================================================*\  Function: 	ProTKGDUIDefaultViewCreateAction  Purpose:	Create Default Views action function\*=============================================================*/void  ProTKGDUIDefaultViewCreateAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    ProUserCreateViewAuto (g_ptr);    ProTKGDUIViewNamesUpdate (g_ptr);}/*=============================================================*\  Function: 	ProTKGDUIViewStoreAction  Purpose:	Save View action function\*=============================================================*/void  ProTKGDUIViewStoreAction (char* dialog, char* component, 			      ProAppData appdata){    GearParam* g_ptr = (GearParam*)appdata;    ProUserCreateViewManual (g_ptr);    ProTKGDUIViewNamesUpdate (g_ptr);}/*=============================================================*\  Function: 	ProUserNewgearUI  Purpose:	Initialize and launch the Gear Design dialog\*=============================================================*/int ProUserNewgearUI(){  ProError err;  int ui_status;  GearParam *g_ptr;  ProMdl model;    err = ProMdlCurrentGet(&model);  if (err != PRO_TK_NO_ERROR)    return (-1);    g_ptr = (GearParam*)calloc(1, sizeof(GearParam));  memset (g_ptr, '\0', sizeof (GearParam));  g_ptr->model = (ProPart)model;  g_ptr->current_step = PTK_GD_DATUM;    ProUserAssignParamDef (g_ptr);/*-----------------------------------------------------------------*\    Collect information about created features\*-----------------------------------------------------------------*/  if (ProUserCheckFeatures(g_ptr)!=PRO_TK_NO_ERROR)    {      ProMessageDisplay(MSGFIL, "USER Error while check Gear Design");      return (-1);    }	  err = ProUIDialogCreate (GD_UI_MAIN, GD_UI_MAIN);  if (err != PRO_TK_NO_ERROR)    return PRO_TK_GENERAL_ERROR;    /* UI Initialization */  err = ProUIDialogCloseActionSet (GD_UI_MAIN, 				   (ProUIAction)ProTKGDUICloseAction, NULL);  /* Close actions */  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_CLOSEBTN,				       (ProUIAction)ProTKGDUICloseAction, NULL);    err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_CLOSEBTN_M,				       (ProUIAction)ProTKGDUICloseAction, NULL);  err = ProUIRadiogroupSelectActionSet (GD_UI_MAIN, GD_UI_GEARTYPE_GROUP_M,					(ProUIAction)ProTKGDUIToggleTypeAction, g_ptr);  err = ProUIRadiogroupSelectActionSet (GD_UI_MAIN, GD_UI_GEARTYPE_GROUP_RMB,					(ProUIAction)ProTKGDUIToggleTypeAction, g_ptr);  /* Create action */  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_CREATEBTN,				       (ProUIAction)ProTKGDUICreateAction, 					  g_ptr);  /* Checkbutton actions */  err = ProUICheckbuttonActivateActionSet (GD_UI_MAIN, GD_UI_INCLUDE_KEYWAY,					   (ProUIAction)ProTKGDUIIncludeKeywayAction, g_ptr);  err = ProUICheckbuttonActivateActionSet (GD_UI_MAIN, GD_UI_INCLUDE_KEY,					   (ProUIAction)ProTKGDUIIncludeKeyAction, g_ptr);  err = ProUICheckbuttonActivateActionSet (GD_UI_MAIN, GD_UI_INCLUDE_BN,					   (ProUIAction)ProTKGDUIIncludeBacknotchAction, g_ptr);  /* Input actions */  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_GEARDISK_W_INPUT,				       (ProUIAction)ProTKGDUIDiskInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_GEARDISK_D_INPUT,				       (ProUIAction)ProTKGDUIDiskInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_GEARHOLE_D_INPUT,				       (ProUIAction)ProTKGDUIHoleInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_GEARHUB_D_INPUT,				       (ProUIAction)ProTKGDUIHubInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_GEARHUB_T_INPUT,				       (ProUIAction)ProTKGDUIHubInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_BP_D_INPUT,				       (ProUIAction)ProTKGDUIBackplateInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_BP_T_INPUT,				       (ProUIAction)ProTKGDUIBackplateInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_TOOTH_PRESSURE_ANGLE,				       (ProUIAction)ProTKGDUITeethInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_TOOTH_P1_INPUT,				       (ProUIAction)ProTKGDUITeethInputAction,				       g_ptr);  err = ProUIInputpanelInputActionSet (GD_UI_MAIN, GD_UI_TOOTH_INNER_SURF_INPUT,				       (ProUIAction)ProTKGDUITeethInputAction,				       g_ptr);  err = ProUISpinboxUpdateActionSet (GD_UI_MAIN, GD_UI_N_TEETH_SPINBOX,				     (ProUIAction)ProTKGDUITeethUpdateAction,				     g_ptr);      /* Update table */  ProTKGDUIStatusTableInit (g_ptr);  err = ProUITableSelectActionSet (GD_UI_MAIN, GD_UI_STATUS_TABLE,				     (ProUIAction)ProTKGDUITableSelectAction,				     g_ptr);  ProTKGDUIDatumUIUpdate (g_ptr);  ProTKGDUIDiskUIUpdate (g_ptr);  ProTKGDUIHoleUIUpdate (g_ptr);  ProTKGDUIHubUIUpdate (g_ptr);  ProTKGDUIBackplateUIUpdate (g_ptr);  ProTKGDUITeethUIUpdate (g_ptr);  /* Tools actions */  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_TOOL_DELETE_M,				     (ProUIAction)ProTKGDUIDeleteAction,				     g_ptr);  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_TOOL_MODIFY_M,				     (ProUIAction)ProTKGDUIModifyAction,				     g_ptr);  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_TOOL_REGENERATE_M,				     (ProUIAction)ProTKGDUIRegenerateAction,				     g_ptr);  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_TOOL_MATERIAL_M,				     (ProUIAction)ProTKGDUIMaterialAction,				     g_ptr);  ProTKGDUIViewNamesUpdate (g_ptr);  err = ProUIRadiogroupSelectActionSet (GD_UI_MAIN, GD_UI_TOOL_VIEW_CHOICE_M,				     (ProUIAction)ProTKGDUIViewSelectAction,				     g_ptr);  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, 					  GD_UI_TOOL_VIEW_DEFAULTCREATE_M,					  (ProUIAction)ProTKGDUIDefaultViewCreateAction,					  g_ptr);  err = ProUIPushbuttonActivateActionSet (GD_UI_MAIN, GD_UI_TOOL_VIEW_STORE_M,				     (ProUIAction)ProTKGDUIViewStoreAction,				     g_ptr);  /* Popup menu */  err = ProUIDialogPopupmenuSet (GD_UI_MAIN, GD_UI_MENUPANE_RMB);  err = ProUIDialogActivate (GD_UI_MAIN, &ui_status);    if (err != PRO_TK_NO_ERROR)    return PRO_TK_GENERAL_ERROR;  err = ProUIDialogDestroy (GD_UI_MAIN);  free (g_ptr);  return PRO_TK_NO_ERROR;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -