Esempio n. 1
0
/* ************************************************************************* */
void GlobalFunction::matlab_proxy(const std::string& toolboxPath, const std::string& wrapperName,
    const TypeAttributesTable& typeAttributes,  FileWriter& wrapperFile,
    std::vector<std::string>& functionNames) const {

  // cluster overloads with same namespace
  // create new GlobalFunction structures around namespaces - same namespaces and names are overloads
  // map of namespace to global function
  typedef map<string, GlobalFunction> GlobalFunctionMap;
  GlobalFunctionMap grouped_functions;
  for (size_t i=0; i<namespaces.size(); ++i) {
    StrVec ns = namespaces.at(i);
    string str_ns = qualifiedName("", ns, "");
    ReturnValue ret = returnVals.at(i);
    ArgumentList args = argLists.at(i);

    if (!grouped_functions.count(str_ns))
      grouped_functions[str_ns] = GlobalFunction(name, verbose_);

    grouped_functions[str_ns].argLists.push_back(args);
    grouped_functions[str_ns].returnVals.push_back(ret);
    grouped_functions[str_ns].namespaces.push_back(ns);
  }

  size_t lastcheck = grouped_functions.size();
  BOOST_FOREACH(const GlobalFunctionMap::value_type& p, grouped_functions) {
    p.second.generateSingleFunction(toolboxPath, wrapperName, typeAttributes,  wrapperFile, functionNames);
    if (--lastcheck != 0)
      wrapperFile.oss << endl;
  }
Esempio n. 2
0
int Menu_MainProc(long mi)
{

/*
menu_vol_100
menu_vol_75
menu_vol_50
menu_vol_25
menu_vol_mute

menu_vol_autodec
menu_vol_autoinc

menu_eject
menu_openfile
menu_addfile

menu_play
menu_pause
menu_stop
menu_next
menu_previous
		
menu_rewind
menu_fastforward
		
menu_about

menu_openfile
menu_addfile

menu_about
menu_about

menu_settings
menu_skins
menu_effects

menu_conversion
menu_ripping
menu_joining
menu_tageditor

menu_select_drive
menu_load_tracks
menu_eject
	
menu_sleep
menu_wake
menu_exit
*/


	switch(mi)
	{
	case menu_about:
		basewindows_show_about(1);
		break;

	case menu_help:
		{
			letter  fpath[v_sys_maxpath];

			str_cpy(fpath, uni("file:///"));
			str_cat(fpath, fennec_get_path(0, 0));
			str_cat(fpath, uni("/help/fennec help.html"));

			ShellExecute(window_main, 0, fpath, 0, 0, SW_SHOW);
		}
		break;

	case menu_vol_100:
		audio_setvolume(1.0f, 1.0f);
		break;

	case menu_vol_75:
		audio_setvolume(0.75f, 0.75f);
		break;

	case menu_vol_50:
		audio_setvolume(0.5f, 0.5f);
		break;

	case menu_vol_25:
		audio_setvolume(0.25f, 0.25f);
		break;

	case menu_vol_mute:
		audio_setvolume(0.0f, 0.0f);
		break;

	case menu_vol_autoinc:
		audio_getvolume(&volume_currentvolume_l, &volume_currentvolume_r);
		if(volume_active == volume_active_nothing) SetTimer(0, timer_volume, 20, (TIMERPROC)TimerProc_Volume);

		volume_active = volume_active_increase;
		break;

	case menu_vol_autodec:
		audio_getvolume(&volume_currentvolume_l, &volume_currentvolume_r);
		if(volume_active == volume_active_nothing) SetTimer(0, timer_volume, 20, (TIMERPROC)TimerProc_Volume);

		volume_active = volume_active_decrease;
		break;

	case menu_openfile:
		GlobalFunction(Function_OpenFileDialog);
		break;
	
	case menu_load_tracks:
		playback_loadtracks();
		break;

	case menu_select_drive:
		DialogBox(instance_fennec, MAKEINTRESOURCE(IDD_SELDRIVE), window_main, (DLGPROC)callback_seldrive);
		break;

	case menu_eject:
		if(settings.player.selected_drive)
		{
			if(audio_playlist_getsource(audio_playlist_getcurrentindex())[0] == settings.player.selected_drive)audio_stop();
			audio_input_drive_eject((char)settings.player.selected_drive);
		}
		break;

	case menu_play:
		GlobalFunction(Function_Play);
		break;

	case menu_pause:
		GlobalFunction(Function_Pause);
		break;

	case menu_stop:
		GlobalFunction(Function_Stop);
		break;

	case menu_previous:
		GlobalFunction(Function_Previous);
		break;

	case menu_next:
		GlobalFunction(Function_Next);
		break;

	case menu_rewind:
		GlobalFunction(Function_Rewind);
		break;

	case menu_fastforward:
		GlobalFunction(Function_Forward);
		break;

	case menu_addfile:
		GlobalFunction(Function_AddFileDialog);
		break;

	case menu_settings:
		settings_ui_show();
		break;

	case menu_skins:
		settings_ui_show_ex(fennec_v_settings_ui_panel_skins);
		break;

	case menu_effects:
		settings_ui_show_ex(fennec_v_settings_ui_panel_dsp);
		break;

	case menu_conversion:
		basewindows_show_conversion(0);
		break;

	case menu_ripping:
		basewindows_show_ripping(1);
		break;

	case menu_joining:
		BaseWindows_ShowJoining(1);
		break;

	case menu_tageditor:
		basewindows_show_tagging(1, audio_playlist_getsource(audio_playlist_getcurrentindex()));
		break;

	case menu_sleep:
		fennec_power_sleep();
		break;

	case menu_wake:
		fennec_power_wake();
		break;

	case menu_exit:
		fennec_power_set(fennec_power_mode_default);
		break;

	default:
		return 0;
	}

	fennec_refresh(fennec_v_refresh_force_not);
	return 1;
}
Esempio n. 3
0
unsigned long kb_action(unsigned short fkey, struct setting_key *kcol, int kcount)
{
	unsigned short kp = keypurpose_null;
	int   i;
	
	for(i=0; i<kcount; i++)
	{
		if(kcol[i].kcomb == fkey)
		{
			kp = kcol[i].kaction;
			break;
		}else if(kcol[i].kcomb == 0 && kcol[i].kaction == keypurpose_null){
			return 0;
		}
	}
	
	if(kp == keypurpose_null)return 0;

	switch(kp)
	{
	case keypurpose_play:
		audio_play();
		break;

	case keypurpose_pause:
		audio_pause();
		break;

	case keypurpose_stop:
		audio_stop();
		break;

	case keypurpose_load:
		GlobalFunction(Function_OpenFileDialog);
		break;
                  
	case keypurpose_rewind:
		GlobalFunction(Function_Rewind);
		break;

	case keypurpose_forward:
		GlobalFunction(Function_Forward);
		break;

	case keypurpose_previous:
		audio_playlist_previous();
		break;

	case keypurpose_next:
		audio_playlist_next();
		break;

	case keypurpose_eject:
		if(settings.player.selected_drive)
		{
			if(audio_playlist_getsource(audio_playlist_getcurrentindex())[0] == settings.player.selected_drive)audio_stop();
			audio_input_drive_eject((char)settings.player.selected_drive);
		}
		break;

	case keypurpose_select:
		if(settings.player.selected_drive)
		{
			int     i, c = audio_input_drive_gettracks((char)settings.player.selected_drive);
			letter  buf[128];
			letter  buf2[32];

			if(c > 0)
			{
				audio_playlist_clear();
				for(i=0; i<c; i++)
				{
					buf[0] = (letter)settings.player.selected_drive;
					str_cpy(buf + 1, uni(":\\Track"));
							
					memset(buf2, 0, sizeof(buf2));
					str_itos(i + 1, buf2, 10);
					str_cat(buf, buf2);
					str_cat(buf, uni(".cda"));

					audio_playlist_add(buf, 0, 0);
				}
				fennec_refresh(fennec_v_refresh_force_high);
			}
		}
		break;

	case keypurpose_panelsw_main:
		GlobalFunction(Function_MainPanel);
		break;

	case keypurpose_panelsw_color:
		GlobalFunction(Function_SelectThemePanel);
		break;

	case keypurpose_panelsw_visualization:
		//Display_ShowPanel(PanelID_Visualization);
		break;

	case keypurpose_panelsw_equalizer:
		GlobalFunction(Function_EqualizerPanel);
		break;

	case keypurpose_panelsw_mediainfo:
		break;

	case keypurpose_panelsw_playlist:
		break;

	case keypurpose_panelnext:
		//Display_ShowPanel_Next();
		break;

	case keypurpose_panelprevious:
		//Display_ShowPanel_Back();
		break;

	case keypurpose_exit:
		fennec_power_set(fennec_power_mode_default);
		break;

	case keypurpose_sleep:
		fennec_power_sleep();
		break;

	case keypurpose_minimize:
		ShowWindow(window_main,SW_MINIMIZE);
		break;

	case keypurpose_refresh:
		fennec_refresh(fennec_v_refresh_force_full);
		break;

	case keypurpose_conversion:
		basewindows_show_conversion(0);
		break;

	case keypurpose_ripping:
		basewindows_show_ripping(1);
		break;

	case keypurpose_joining:
		BaseWindows_ShowJoining(1);
		break;

	case keypurpose_visualization:

		break;

	case keypurpose_playlist:

		break;

	case keypurpose_volumeup:
		{
			double vl = 0.0f, vr = 0.0f;
			audio_getvolume(&vl, &vr);
			vl += 0.05;
			vr += 0.05;
			if(vl > 1.0f)vl = 1.0f;
			if(vr > 1.0f)vr = 1.0f;

			audio_setvolume(vl, vr);

			fennec_refresh(fennec_v_refresh_force_not);
		}
		break;

	case keypurpose_volumedown:
		{
			double vl = 0.0f, vr = 0.0f;
			audio_getvolume(&vl, &vr);
			vl -= 0.05;
			vr -= 0.05;
			if(vl < 0.0f)vl = 0.0f;
			if(vr < 0.0f)vr = 0.0f;

			audio_setvolume(vl, vr);

			fennec_refresh(fennec_v_refresh_force_not);
		}
		break;

	case keypurpose_volumeup_auto:
		Menu_MainProc(menu_vol_autoinc);
		break;

	case keypurpose_volumedown_auto:
		Menu_MainProc(menu_vol_autodec);
		break;

	case keypurpose_volumemin:
		audio_setvolume(0.0f, 0.0f);
		fennec_refresh(fennec_v_refresh_force_not);
		break;

	case keypurpose_volumemax:
		audio_setvolume(1.0f, 1.0f);
		fennec_refresh(fennec_v_refresh_force_not);
		break;

	case keypurpose_addfile:
		GlobalFunction(Function_AddFileDialog);
		break;

	case keypurpose_fast_load:
		break;

	case keypurpose_fast_addfile:
		break;

	case keypurpose_preferences:
		settings_ui_show();
		break;

	case keypurpose_keyboardviewer:
		break;

	case keypurpose_currenttagging:
		basewindows_show_tagging(0, audio_playlist_getsource(audio_playlist_getcurrentindex()));
		break;

	case keypurpose_switch_main:
		SetFocus(window_main);
		break;

	case keypurpose_switch_playlist:
		if(GetFocus() != window_main)
		{
			SetFocus(window_main);
		}else{
			HWND plwnd;

			skins_function_getdata(get_window_playlist, &plwnd, 0);
			
			if(plwnd)
			{
				SetFocus(plwnd);
				break;
			}
		}
		break;

	case keypurpose_playlist_autoswitching:
		settings.player.auto_switching ^= 1;
		break;

	case keypurpose_playlist_shuffle:
		if(settings.player.playlist_shuffle)
			audio_playlist_setshuffle(0, 1);
		else
			audio_playlist_setshuffle(1, 1);

		break;

	case keypurpose_playlist_information:
		/* [todo] wrong!! */
		basewindows_show_tagging(0, audio_playlist_getsource(audio_playlist_getcurrentindex()));
		break;

	case keypurpose_playlist_repeatall:
		settings.player.playlist_repeat_list ^= 1;
		break;

	case keypurpose_playlist_repeatsingle:
		settings.player.playlist_repeat_single ^= 1;
		break;

	case keypurpose_playlist_insert:
		GlobalFunction(Function_AddFileDialog);
		fennec_refresh(fennec_v_refresh_force_high);
		break;

	case keypurpose_playlist_insertdir:
		{
			letter        fpath[v_sys_maxpath];
			BROWSEINFO    bi;
			LPITEMIDLIST  lpi;

			fpath[0] = 0;

			bi.hwndOwner      = window_main;
			bi.lpszTitle      = uni("Add to playlist.");
			bi.pszDisplayName = fpath;
			bi.lpfn           = 0;
			bi.iImage         = 0;
			bi.lParam         = 0;
			bi.pidlRoot       = 0;
			bi.ulFlags        = BIF_RETURNONLYFSDIRS;

			lpi = SHBrowseForFolder(&bi);
			SHGetPathFromIDList(lpi, fpath);

			if(str_len(fpath))
			{
				AddDirectory(fpath);
			}
			fennec_refresh(fennec_v_refresh_force_high);
		}
		break;

	case keypurpose_playlist_remove:

		break;


	}
	
	return 1;
}