コード例 #1
0
ファイル: options.c プロジェクト: pcwalton/NetSurf
END_HANDLER

BUTTON_CLICKED(setDefaultExportOptions)
{
	nsoption_set_int(margin_top, DEFAULT_MARGIN_TOP_MM);
	nsoption_set_int(margin_bottom, DEFAULT_MARGIN_BOTTOM_MM);
	nsoption_set_int(margin_left, DEFAULT_MARGIN_LEFT_MM);
	nsoption_set_int(margin_right, DEFAULT_MARGIN_RIGHT_MM);
	nsoption_set_int(export_scale, DEFAULT_EXPORT_SCALE * 100);		
	nsoption_set_bool(suppress_images, false);
	nsoption_set_bool(remove_backgrounds, false);
	nsoption_set_bool(enable_loosening, true);
	nsoption_set_bool(enable_PDF_compression, true);
	nsoption_set_bool(enable_PDF_password, false);
			
	SET_SPIN(spinMarginTop, nsoption_int(margin_top));
	SET_SPIN(spinMarginBottom, nsoption_int(margin_bottom));
	SET_SPIN(spinMarginLeft, nsoption_int(margin_left));
	SET_SPIN(spinMarginRight, nsoption_int(margin_right));
	SET_SPIN(spinExportScale, nsoption_int(export_scale));
	SET_CHECK(checkSuppressImages, nsoption_bool(suppress_images));
	SET_CHECK(checkRemoveBackgrounds, nsoption_bool(remove_backgrounds));
	SET_CHECK(checkCompressPDF, nsoption_bool(enable_PDF_compression));
	SET_CHECK(checkPasswordPDF, nsoption_bool(enable_PDF_password));
	SET_CHECK(checkFitPage, nsoption_bool(enable_loosening));
}
コード例 #2
0
ファイル: menu.cpp プロジェクト: lacombar/netbsd-alc
//
// Option window
//
void
OptionTabWindow::init(HWND w)
{
    struct HpcMenuInterface::HpcMenuPreferences &pref = HPC_PREFERENCE;

    _window = w;

    TabWindow::init(_window);
    _spin_edit = GetDlgItem(_window, IDC_OPT_AUTO_INPUT);
    _spin = CreateUpDownControl(WS_CHILD | WS_BORDER | WS_VISIBLE |
                                UDS_SETBUDDYINT | UDS_ALIGNRIGHT, 80, 0, 50, 50, _window,
                                IDC_OPT_AUTO_UPDOWN, _app._instance, _spin_edit, 60, 1, 30);
    BOOL onoff = pref.auto_boot ? TRUE : FALSE;
    EnableWindow(_spin_edit, onoff);
    EnableWindow(_spin, onoff);

    SET_CHECK(AUTO, pref.auto_boot);
    if (pref.auto_boot) {
        TCHAR tmp[32];
        wsprintf(tmp, TEXT("%d"), pref.auto_boot);
        Edit_SetText(_spin_edit, tmp);
    }
    SET_CHECK(VIDEO,	pref.reverse_video);
    SET_CHECK(PAUSE,	pref.pause_before_boot);
    SET_CHECK(DEBUG,	pref.load_debug_info);
    SET_CHECK(SAFETY,	pref.safety_message);
    Edit_SetText(GetDlgItem(w, IDC_OPT_EXTKOPT), pref.boot_extra);
}
コード例 #3
0
ファイル: WebP_In_Dialog.cpp プロジェクト: EzraCc/AdobeWebM
static BOOL CALLBACK DialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
    BOOL fError; 
 
    switch(message) 
    { 
		case WM_INITDIALOG:
			SET_CHECK( (g_alpha == DIALOG_ALPHA_TRANSPARENCY ? IN_Alpha_Radio_Transparent :
						g_alpha == DIALOG_ALPHA_CHANNEL ? IN_Alpha_Radio_Channel :
						IN_Alpha_Radio_Transparent), TRUE);

			SET_CHECK(IN_Multiply_Checkbox, g_mult);
			SET_CHECK(IN_Auto_Checkbox, g_autoD);

			ENABLE_ITEM(IN_Multiply_Checkbox, (g_alpha == DIALOG_ALPHA_CHANNEL));

			return TRUE;
 
		case WM_NOTIFY:
			return FALSE;

        case WM_COMMAND: 
			g_alpha = GET_CHECK(IN_Alpha_Radio_Transparent) ? DIALOG_ALPHA_TRANSPARENCY :
							GET_CHECK(IN_Alpha_Radio_Channel) ? DIALOG_ALPHA_CHANNEL :
							DIALOG_ALPHA_TRANSPARENCY;

			g_mult = GET_CHECK(IN_Multiply_Checkbox);
			g_autoD = GET_CHECK(IN_Auto_Checkbox);

			g_item_clicked = LOWORD(wParam);

            switch(g_item_clicked)
            { 
                case IN_OK: 
				case IN_Cancel:
					EndDialog(hwndDlg, 0);
					return TRUE;

				case IN_Set_Defaults_Button:
					WriteAlphaPrefs();
					WriteAutoPrefs();
					return TRUE;

				case IN_Alpha_Radio_Transparent:
				case IN_Alpha_Radio_Channel:
					ENABLE_ITEM(IN_Multiply_Checkbox, (g_alpha == DIALOG_ALPHA_CHANNEL));
					return TRUE;
            } 
    } 
    return FALSE; 
} 
コード例 #4
0
void download(GtkWidget *dialog,TDEINT_PARAM *param)
{
        SET_SPIN(spinbuttonmthreshL,mthreshL);
        SET_SPIN(spinbuttonmthreshC,mthreshC);
        SET_SPIN(spinbuttoncthresh,cthresh);
        SET_SPIN(spinbuttonMI,MI);
        SET_SPIN(spinbuttonAP,AP);

        SET_MENU(comboboxOrder,order);
        SET_MENU(comboboxInterpolate,field);
        SET_MENU(comboboxType,type);
        SET_MENU(comboboxMnt,mtnmode);
        SET_MENU(combobox5,link);
        SET_MENU(combobox6,APType);

        SET_CHECK(checkbuttonChroma,chroma);
        SET_CHECK(checkbuttonTryweave,tryWeave);
        SET_CHECK(checkbuttonDenoise,denoise);
        SET_CHECK(checkbuttonSharp,sharp);
        SET_CHECK(checkbuttonFull,full);
}
コード例 #5
0
ファイル: Config.cpp プロジェクト: AmbientMalice/pcsx2
BOOL CALLBACK ConfigProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
	int wmId,wmEvent;
	wchar_t temp[384]={0};

	switch(uMsg)
	{
		case WM_PAINT:
			return FALSE;

		case WM_INITDIALOG:
		{
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_RESETCONTENT,0,0 );
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"0 - Nearest (fastest/bad quality)" );
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"1 - Linear (simple/okay sound)" );
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"2 - Cubic (artificial highs)" );
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"3 - Hermite (better highs)" );
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_ADDSTRING,0,(LPARAM) L"4 - Catmull-Rom (PS2-like/slow)" );
			SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_SETCURSEL,Interpolation,0 );

			SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_RESETCONTENT,0,0 );
			SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_ADDSTRING,0,(LPARAM) L"TimeStretch (Recommended)" );
			SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_ADDSTRING,0,(LPARAM) L"Async Mix (Breaks some games!)" );
			SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_ADDSTRING,0,(LPARAM) L"None (Audio can skip.)" );
			SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_SETCURSEL,SynchMode,0 );
			
			SendDialogMsg( hWnd, IDC_SPEAKERS, CB_RESETCONTENT,0,0 );
			SendDialogMsg( hWnd, IDC_SPEAKERS, CB_ADDSTRING,0,(LPARAM) L"Stereo (none, default)" );
			SendDialogMsg( hWnd, IDC_SPEAKERS, CB_ADDSTRING,0,(LPARAM) L"Quadrafonic" );
			SendDialogMsg( hWnd, IDC_SPEAKERS, CB_ADDSTRING,0,(LPARAM) L"Surround 5.1" );
			SendDialogMsg( hWnd, IDC_SPEAKERS, CB_ADDSTRING,0,(LPARAM) L"Surround 7.1" );			
			SendDialogMsg( hWnd, IDC_SPEAKERS, CB_SETCURSEL,numSpeakers,0 );

			SendDialogMsg( hWnd, IDC_OUTPUT, CB_RESETCONTENT,0,0 );

			int modidx = 0;
			while( mods[modidx] != NULL )
			{
				swprintf_s( temp, 72, L"%d - %s", modidx, mods[modidx]->GetLongName() );
				SendDialogMsg( hWnd, IDC_OUTPUT, CB_ADDSTRING,0,(LPARAM)temp );
				++modidx;
			}
			SendDialogMsg( hWnd, IDC_OUTPUT, CB_SETCURSEL, OutputModule, 0 );

			double minlat = (SynchMode == 0)?LATENCY_MIN_TS:LATENCY_MIN;
			int minexp = (int)(pow( minlat+1, 1.0/3.0 ) * 128.0);
			int maxexp = (int)(pow( (double)LATENCY_MAX+2, 1.0/3.0 ) * 128.0);
			INIT_SLIDER( IDC_LATENCY_SLIDER, minexp, maxexp, 200, 42, 1 );

			SendDialogMsg( hWnd, IDC_LATENCY_SLIDER, TBM_SETPOS, TRUE, (int)((pow( (double)SndOutLatencyMS, 1.0/3.0 ) * 128.0) + 1) );
			swprintf_s(temp,L"%d ms (avg)",SndOutLatencyMS);
			SetWindowText(GetDlgItem(hWnd,IDC_LATENCY_LABEL),temp);

			int configvol = (int)(FinalVolume * 100 + 0.5f);
			INIT_SLIDER( IDC_VOLUME_SLIDER, 0, 100, 10, 42, 1 );

			SendDialogMsg( hWnd, IDC_VOLUME_SLIDER, TBM_SETPOS, TRUE, configvol );
			swprintf_s(temp,L"%d%%",configvol);
			SetWindowText(GetDlgItem(hWnd,IDC_VOLUME_LABEL),temp);
			
			EnableWindow( GetDlgItem( hWnd, IDC_OPEN_CONFIG_SOUNDTOUCH ), (SynchMode == 0) );
			EnableWindow( GetDlgItem( hWnd, IDC_OPEN_CONFIG_DEBUG ), DebugEnabled );

			SET_CHECK(IDC_EFFECTS_DISABLE,	EffectsDisabled);
			SET_CHECK(IDC_DEALIASFILTER,	postprocess_filter_dealias);
			SET_CHECK(IDC_DEBUG_ENABLE,		DebugEnabled);
			SET_CHECK(IDC_DSP_ENABLE,		dspPluginEnabled);
		}
		break;

		case WM_COMMAND:
			wmId    = LOWORD(wParam);
			wmEvent = HIWORD(wParam);
			// Parse the menu selections:
			switch (wmId)
			{
				case IDOK:
				{
					double res = ((int)SendDialogMsg( hWnd, IDC_LATENCY_SLIDER, TBM_GETPOS, 0, 0 )) / 128.0;
					SndOutLatencyMS = (int)pow( res, 3.0 );
					Clampify( SndOutLatencyMS, LATENCY_MIN, LATENCY_MAX );
					FinalVolume = (float)(SendDialogMsg( hWnd, IDC_VOLUME_SLIDER, TBM_GETPOS, 0, 0 )) / 100;
					Interpolation = (int)SendDialogMsg( hWnd, IDC_INTERPOLATE, CB_GETCURSEL,0,0 );
					OutputModule = (int)SendDialogMsg( hWnd, IDC_OUTPUT, CB_GETCURSEL,0,0 );
					SynchMode = (int)SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_GETCURSEL,0,0 );
					numSpeakers = (int)SendDialogMsg( hWnd, IDC_SPEAKERS, CB_GETCURSEL,0,0 );

					WriteSettings();
					EndDialog(hWnd,0);
				}
				break;

				case IDCANCEL:
					EndDialog(hWnd,0);
				break;

				case IDC_OUTCONF:
				{
					const int module = (int)SendMessage(GetDlgItem(hWnd,IDC_OUTPUT),CB_GETCURSEL,0,0);
					if( mods[module] == NULL ) break;
					mods[module]->Configure((uptr)hWnd);
				}
				break;

				case IDC_OPEN_CONFIG_DEBUG:
				{
					// Quick Hack -- DebugEnabled is re-loaded with the DebugConfig's API,
					// so we need to override it here:

					bool dbgtmp = DebugEnabled;
					DebugConfig::OpenDialog();
					DebugEnabled = dbgtmp;
				}
				break;

				case IDC_SYNCHMODE:
				{
					if(wmEvent == CBN_SELCHANGE)
					{
						int sMode = (int)SendDialogMsg( hWnd, IDC_SYNCHMODE, CB_GETCURSEL,0,0 );
						double minlat = (sMode == 0)?LATENCY_MIN_TS:LATENCY_MIN;
						int minexp = (int)(pow( minlat+1, 1.0/3.0 ) * 128.0);
						int maxexp = (int)(pow( (double)LATENCY_MAX+2, 1.0/3.0 ) * 128.0);
						INIT_SLIDER( IDC_LATENCY_SLIDER, minexp, maxexp, 200, 42, 1 );
						
						int curpos = (int)SendMessage(GetDlgItem( hWnd, IDC_LATENCY_SLIDER ),TBM_GETPOS,0,0);
						double res = pow( curpos / 128.0, 3.0 );
						curpos = (int)res;
						swprintf_s(temp,L"%d ms (avg)",curpos);
						SetDlgItemText(hWnd,IDC_LATENCY_LABEL,temp);
					}
				}
				break;


				case IDC_OPEN_CONFIG_SOUNDTOUCH:
					SoundtouchCfg::OpenDialog( hWnd );
				break;

				HANDLE_CHECK(IDC_EFFECTS_DISABLE,EffectsDisabled);
				HANDLE_CHECK(IDC_DEALIASFILTER,postprocess_filter_dealias);
				HANDLE_CHECK(IDC_DSP_ENABLE,dspPluginEnabled);
				
				// Fixme : Eh, how to update this based on drop list selections? :p
				// IDC_TS_ENABLE already deleted!

				//HANDLE_CHECKNB(IDC_TS_ENABLE,timeStretchEnabled);
				//	EnableWindow( GetDlgItem( hWnd, IDC_OPEN_CONFIG_SOUNDTOUCH ), timeStretchEnabled );
				break;

				HANDLE_CHECKNB(IDC_DEBUG_ENABLE,DebugEnabled);
					DebugConfig::EnableControls( hWnd );
					EnableWindow( GetDlgItem( hWnd, IDC_OPEN_CONFIG_DEBUG ), DebugEnabled );
				break;

				default:
					return FALSE;
			}
		break;

		case WM_HSCROLL:
		{
			wmEvent = LOWORD(wParam);
			HWND hwndDlg = (HWND)lParam;

			// TB_THUMBTRACK passes the curpos in wParam.  Other messages
			// have to use TBM_GETPOS, so they will override this assignment (see below)

			int curpos = HIWORD( wParam );

			switch( wmEvent )
			{
				//case TB_ENDTRACK:
				//case TB_THUMBPOSITION:
				case TB_LINEUP:
				case TB_LINEDOWN:
				case TB_PAGEUP:
				case TB_PAGEDOWN:
					curpos = (int)SendMessage(hwndDlg,TBM_GETPOS,0,0);

				case TB_THUMBTRACK:
					Clampify( curpos,
						(int)SendMessage(hwndDlg,TBM_GETRANGEMIN,0,0),
						(int)SendMessage(hwndDlg,TBM_GETRANGEMAX,0,0)
					);

					SendMessage((HWND)lParam,TBM_SETPOS,TRUE,curpos);

					if( hwndDlg == GetDlgItem( hWnd, IDC_LATENCY_SLIDER ) )
					{
						double res = pow( curpos / 128.0, 3.0 );
						curpos = (int)res;
						swprintf_s(temp,L"%d ms (avg)",curpos);
						SetDlgItemText(hWnd,IDC_LATENCY_LABEL,temp);
					}
					
					if( hwndDlg == GetDlgItem( hWnd, IDC_VOLUME_SLIDER ) )
					{
						swprintf_s(temp,L"%d%%",curpos);
						SetDlgItemText(hWnd,IDC_VOLUME_LABEL,temp);
					}
				break;

				default:
					return FALSE;
			}
		}
		break;

		default:
			return FALSE;
	}
	return TRUE;
}
コード例 #6
0
ファイル: options.c プロジェクト: pcwalton/NetSurf
void nsgtk_options_load(void) 
{
	GtkBox *box;
	const char *default_accept_language = "en";
	const char *default_homepage_url = "";
	const char *default_http_proxy_host = "";
	const char *default_http_proxy_auth_user = "";
	const char *default_http_proxy_auth_pass = "";
	int combo_row_count = 0;
	int active_language = 0;
	int proxytype = 0;
	FILE *fp;
	char buf[50];

	/* get widget text */
	if (nsoption_charp(accept_language) != NULL) {
		default_accept_language = nsoption_charp(accept_language);
	}

	if (nsoption_charp(homepage_url) != NULL) {
		default_homepage_url = nsoption_charp(homepage_url);
	}

	if (nsoption_charp(http_proxy_host) != NULL) {
		default_http_proxy_host = nsoption_charp(http_proxy_host);
	}

	if (nsoption_charp(http_proxy_auth_user) != NULL) {
		default_http_proxy_auth_user = nsoption_charp(http_proxy_auth_user);
	}

	if (nsoption_charp(http_proxy_auth_pass) != NULL) {
		default_http_proxy_auth_pass = nsoption_charp(http_proxy_auth_pass);
	}

	if (nsoption_bool(http_proxy) == true) {
		proxytype = nsoption_int(http_proxy_auth) + 1;
	}

	/* Create combobox */
	box = GTK_BOX(gtk_builder_get_object(gladeFile, "combolanguagevbox"));
	comboLanguage = nsgtk_combo_box_text_new();

	/* Populate combobox from languages file */
	if ((languages_file_location != NULL) && 
	    ((fp = fopen(languages_file_location, "r")) != NULL)) {
		LOG(("Used %s for languages", languages_file_location));
		while (fgets(buf, sizeof(buf), fp)) {
			/* Ignore blank lines */
			if (buf[0] == '\0')
				continue;

			/* Remove trailing \n */
			buf[strlen(buf) - 1] = '\0';

			nsgtk_combo_box_text_append_text(comboLanguage, buf);

			if (strcmp(buf, default_accept_language) == 0)
				active_language = combo_row_count;

			combo_row_count++;
		}

		fclose(fp);
	} else {
		LOG(("Failed opening languages file"));
		warn_user("FileError", languages_file_location);
		nsgtk_combo_box_text_append_text(comboLanguage, "en");
	}


	gtk_combo_box_set_active(GTK_COMBO_BOX(comboLanguage), active_language);
	/** \todo localisation */
	gtk_widget_set_tooltip_text(GTK_WIDGET(comboLanguage), 
			"set preferred language for web pages");
	gtk_box_pack_start(box, comboLanguage, FALSE, FALSE, 0);
	gtk_widget_show(comboLanguage);
	
	nsgtk_options_theme_combo();
	
	SET_ENTRY(entryHomePageURL, default_homepage_url);
	SET_BUTTON(setCurrentPage);
	SET_BUTTON(setDefaultPage);
	SET_CHECK(checkHideAdverts, nsoption_bool(block_ads));
	
	SET_CHECK(checkDisablePopups, nsoption_bool(disable_popups));
	SET_CHECK(checkDisablePlugins, nsoption_bool(disable_plugins));
	SET_SPIN(spinHistoryAge, nsoption_int(history_age));
	SET_CHECK(checkHoverURLs, nsoption_bool(hover_urls));
	
	SET_CHECK(checkDisplayRecentURLs, nsoption_bool(url_suggestion));
	SET_CHECK(checkSendReferer, nsoption_bool(send_referer));
        SET_CHECK(checkShowSingleTab, nsoption_bool(show_single_tab));
	
	SET_COMBO(comboProxyType, proxytype);
	SET_ENTRY(entryProxyHost, default_http_proxy_host);

	gtk_widget_set_sensitive(entryProxyHost, proxytype != 0);

	snprintf(buf, sizeof(buf), "%d", nsoption_int(http_proxy_port));	

	SET_ENTRY(entryProxyPort, buf);
	gtk_widget_set_sensitive(entryProxyPort, proxytype != 0);

	SET_ENTRY(entryProxyUser, default_http_proxy_auth_user);

	gtk_widget_set_sensitive(entryProxyUser, proxytype != 0);

	SET_ENTRY(entryProxyPassword, default_http_proxy_auth_pass);

	gtk_widget_set_sensitive(entryProxyPassword, proxytype != 0);

	SET_SPIN(spinMaxFetchers, nsoption_int(max_fetchers));
	SET_SPIN(spinFetchesPerHost, nsoption_int(max_fetchers_per_host));
	SET_SPIN(spinCachedConnections, nsoption_int(max_cached_fetch_handles));

	SET_CHECK(checkResampleImages, nsoption_bool(render_resample));
	SET_SPIN(spinAnimationSpeed, nsoption_int(minimum_gif_delay) / 100.0);
	SET_CHECK(checkDisableAnimations, !nsoption_bool(animate_images));

	SET_FONT(fontSansSerif, nsoption_charp(font_sans));
	SET_FONT(fontSerif, nsoption_charp(font_serif));
	SET_FONT(fontMonospace, nsoption_charp(font_mono));
	SET_FONT(fontCursive, nsoption_charp(font_cursive));
	SET_FONT(fontFantasy, nsoption_charp(font_fantasy));
	SET_COMBO(comboDefault, nsoption_int(font_default));
	SET_SPIN(spinDefaultSize, nsoption_int(font_size) / 10);
	SET_SPIN(spinMinimumSize, nsoption_bool(font_min_size) / 10);
	SET_BUTTON(fontPreview);
	
	SET_COMBO(comboButtonType, nsoption_int(button_type) -1);

	SET_COMBO(comboTabPosition, nsoption_int(position_tab));

	SET_SPIN(spinMemoryCacheSize, nsoption_int(memory_cache_size) >> 20);
	SET_SPIN(spinDiscCacheAge, nsoption_int(disc_cache_age));
	
	SET_CHECK(checkClearDownloads, nsoption_bool(downloads_clear));
	SET_CHECK(checkRequestOverwrite, nsoption_bool(request_overwrite));
	SET_FILE_CHOOSER(fileChooserDownloads, nsoption_charp(downloads_directory));
	
	SET_CHECK(checkFocusNew, nsoption_bool(focus_new));
	SET_CHECK(checkNewBlank, nsoption_bool(new_blank));
	SET_CHECK(checkUrlSearch, nsoption_bool(search_url_bar));
	SET_COMBO(comboSearch, nsoption_int(search_provider));
	
	SET_BUTTON(buttonaddtheme);
	SET_CHECK(sourceButtonTab, nsoption_bool(source_tab));
		
	SET_SPIN(spinMarginTop, nsoption_int(margin_top));
	SET_SPIN(spinMarginBottom, nsoption_int(margin_bottom));
	SET_SPIN(spinMarginLeft, nsoption_int(margin_left));
	SET_SPIN(spinMarginRight, nsoption_int(margin_right));
	SET_SPIN(spinExportScale, nsoption_int(export_scale));
	SET_CHECK(checkSuppressImages, nsoption_bool(suppress_images));
	SET_CHECK(checkRemoveBackgrounds, nsoption_bool(remove_backgrounds));
	SET_CHECK(checkFitPage, nsoption_bool(enable_loosening));
	SET_CHECK(checkCompressPDF, nsoption_bool(enable_PDF_compression));
	SET_CHECK(checkPasswordPDF, nsoption_bool(enable_PDF_password));
	SET_BUTTON(setDefaultExportOptions);
}
コード例 #7
0
static BOOL CALLBACK DialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
    BOOL fError; 
 
    switch(message) 
    { 
		case WM_INITDIALOG:
			SET_CHECK(OUT_Lossless_Check, g_lossless);

			SendMessage(GET_ITEM(OUT_Quality_Slider),(UINT)TBM_SETRANGEMIN, (WPARAM)(BOOL)FALSE, (LPARAM)1);
			SendMessage(GET_ITEM(OUT_Quality_Slider),(UINT)TBM_SETRANGEMAX, (WPARAM)(BOOL)FALSE, (LPARAM)100);
			SendMessage(GET_ITEM(OUT_Quality_Slider),(UINT)TBM_SETPOS, (WPARAM)(BOOL)TRUE, (LPARAM)g_quality);

			ADD_MENU_ITEM(OUT_BitDepth_Menu, 0, "Auto", DIALOG_BITDEPTH_AUTO, (g_bit_depth == DIALOG_BITDEPTH_AUTO));
			ADD_MENU_ITEM(OUT_BitDepth_Menu, 1, "8-bit", DIALOG_BITDEPTH_8, (g_bit_depth == DIALOG_BITDEPTH_8));
			ADD_MENU_ITEM(OUT_BitDepth_Menu, 2, "16-bit", DIALOG_BITDEPTH_16, (g_bit_depth == DIALOG_BITDEPTH_16));
			ADD_MENU_ITEM(OUT_BitDepth_Menu, 3, "16-bit float", DIALOG_BITDEPTH_16_FLOAT, (g_bit_depth == DIALOG_BITDEPTH_16_FLOAT));
			ADD_MENU_ITEM(OUT_BitDepth_Menu, 4, "32-bit float", DIALOG_BITDEPTH_32_FLOAT, (g_bit_depth == DIALOG_BITDEPTH_32_FLOAT));

			ADD_MENU_ITEM(OUT_Codec_Menu, 0, "Auto", DIALOG_CODEC_AUTO, (g_codec == DIALOG_CODEC_AUTO));
			ADD_MENU_ITEM(OUT_Codec_Menu, 1, "Dirac", DIALOG_CODEC_DIRAC, (g_codec == DIALOG_CODEC_DIRAC));
			ADD_MENU_ITEM(OUT_Codec_Menu, 2, "OpenEXR", DIALOG_CODEC_OPENEXR, (g_codec == DIALOG_CODEC_OPENEXR));
			ADD_MENU_ITEM(OUT_Codec_Menu, 3, "PNG", DIALOG_CODEC_PNG, (g_codec == DIALOG_CODEC_PNG));
			ADD_MENU_ITEM(OUT_Codec_Menu, 4, "Uncompressed", DIALOG_CODEC_UNCOMPRESSED, (g_codec == DIALOG_CODEC_UNCOMPRESSED));

			TrackSlider(hwndDlg);
			TrackLossless(hwndDlg);

			return TRUE;
 
		case WM_NOTIFY:
			switch(LOWORD(wParam))
			{
				case OUT_Quality_Slider:
					TrackSlider(hwndDlg);
				return TRUE;
			}
		return FALSE;

        case WM_COMMAND: 
			g_item_clicked = LOWORD(wParam);

            switch(g_item_clicked)
            { 
                case OUT_OK: 
				case OUT_Cancel:  // do the same thing, but g_item_clicked will be different
					g_lossless = GET_CHECK(OUT_Lossless_Check);
					g_quality = SendMessage(GET_ITEM(OUT_Quality_Slider), TBM_GETPOS, (WPARAM)0, (LPARAM)0 );
					g_bit_depth = (DialogBitDepth)GET_MENU_VALUE(OUT_BitDepth_Menu);
					g_codec = (DialogCodec)GET_MENU_VALUE(OUT_Codec_Menu);

					EndDialog(hwndDlg, 0);
					return TRUE;

				case OUT_Lossless_Check:
					TrackLossless(hwndDlg);
					return TRUE;
            } 
    } 
    return FALSE; 
} 
コード例 #8
0
void nsgtk_options_load(void) 
{
	GtkBox *box;
	char languagefile[strlen(res_dir_location) + SLEN("languages") + 1];
	const char *default_accept_language = 
			option_accept_language ? option_accept_language : "en";
	int combo_row_count = 0;
	int active_language = 0;
	int proxytype = 0;
	FILE *fp;
	char buf[50];

	/* Create combobox */
	box = GTK_BOX(glade_xml_get_widget(gladeFile, "combolanguagevbox"));
	comboLanguage = gtk_combo_box_new_text();

	sprintf(languagefile, "%slanguages", res_dir_location);

	/* Populate combobox from languages file */
	fp = fopen((const char *) languagefile, "r");
	if (fp == NULL) {
		LOG(("Failed opening languages file"));
		warn_user("FileError", (const char *) languagefile);
		return;
	}

	while (fgets(buf, sizeof(buf), fp)) {
		/* Ignore blank lines */
		if (buf[0] == '\0')
			continue;

		/* Remove trailing \n */
		buf[strlen(buf) - 1] = '\0';

		gtk_combo_box_append_text(GTK_COMBO_BOX(comboLanguage), buf);

		if (strcmp(buf, default_accept_language) == 0)
			active_language = combo_row_count;

		combo_row_count++;
	}

	fclose(fp);

	gtk_combo_box_set_active(GTK_COMBO_BOX(comboLanguage), active_language);
	/** \todo localisation */
	gtk_widget_set_tooltip_text(GTK_WIDGET(comboLanguage), 
			"set preferred language for web pages");
	gtk_box_pack_start(box, comboLanguage, FALSE, FALSE, 0);
	gtk_widget_show(comboLanguage);
	
	nsgtk_options_theme_combo();
	
	SET_ENTRY(entryHomePageURL,
			option_homepage_url ? option_homepage_url : "");
	SET_BUTTON(setCurrentPage);
	SET_BUTTON(setDefaultPage);
	SET_CHECK(checkHideAdverts, option_block_ads);
	
	SET_CHECK(checkDisablePopups, option_disable_popups);
	SET_CHECK(checkDisablePlugins, option_disable_plugins);
	SET_SPIN(spinHistoryAge, option_history_age);
	SET_CHECK(checkHoverURLs, option_hover_urls);
	
	SET_CHECK(checkDisplayRecentURLs, option_url_suggestion);
	SET_CHECK(checkSendReferer, option_send_referer);
        SET_CHECK(checkShowSingleTab, option_show_single_tab);
	
	if (option_http_proxy == false)
		proxytype = 0;
	else
		proxytype = option_http_proxy_auth + 1;

	SET_COMBO(comboProxyType, proxytype);
	SET_ENTRY(entryProxyHost,
			option_http_proxy_host ? option_http_proxy_host : "");
	gtk_widget_set_sensitive(entryProxyHost, proxytype != 0);

	snprintf(buf, sizeof(buf), "%d", option_http_proxy_port);	

	SET_ENTRY(entryProxyPort, buf);
	gtk_widget_set_sensitive(entryProxyPort, proxytype != 0);

	SET_ENTRY(entryProxyUser, option_http_proxy_auth_user ?
			option_http_proxy_auth_user : "");
	gtk_widget_set_sensitive(entryProxyUser, proxytype != 0);

	SET_ENTRY(entryProxyPassword, option_http_proxy_auth_pass ?
			option_http_proxy_auth_pass : "");
	gtk_widget_set_sensitive(entryProxyPassword, proxytype != 0);

	SET_SPIN(spinMaxFetchers, option_max_fetchers);
	SET_SPIN(spinFetchesPerHost, option_max_fetchers_per_host);
	SET_SPIN(spinCachedConnections, option_max_cached_fetch_handles);

	SET_CHECK(checkResampleImages, option_render_resample);
	SET_SPIN(spinAnimationSpeed, option_minimum_gif_delay / 100.0);
	SET_CHECK(checkDisableAnimations, !option_animate_images);

	SET_FONT(fontSansSerif, option_font_sans);
	SET_FONT(fontSerif, option_font_serif);
	SET_FONT(fontMonospace, option_font_mono);
	SET_FONT(fontCursive, option_font_cursive);
	SET_FONT(fontFantasy, option_font_fantasy);
	SET_COMBO(comboDefault, option_font_default);
	SET_SPIN(spinDefaultSize, option_font_size / 10);
	SET_SPIN(spinMinimumSize, option_font_min_size / 10);
	SET_BUTTON(fontPreview);
	
	SET_COMBO(comboButtonType, option_button_type -1);

	SET_SPIN(spinMemoryCacheSize, option_memory_cache_size >> 20);
	SET_SPIN(spinDiscCacheAge, option_disc_cache_age);
	
	SET_CHECK(checkClearDownloads, option_downloads_clear);
	SET_CHECK(checkRequestOverwrite, option_request_overwrite);
	SET_FILE_CHOOSER(fileChooserDownloads, option_downloads_directory);
	
	SET_CHECK(checkFocusNew, option_focus_new);
	SET_CHECK(checkNewBlank, option_new_blank);
	SET_CHECK(checkUrlSearch, option_search_url_bar);
	SET_COMBO(comboSearch, option_search_provider);
	
	SET_BUTTON(buttonaddtheme);
	SET_CHECK(sourceButtonTab, option_source_tab);
		
	SET_SPIN(spinMarginTop, option_margin_top);
	SET_SPIN(spinMarginBottom, option_margin_bottom);
	SET_SPIN(spinMarginLeft, option_margin_left);
	SET_SPIN(spinMarginRight, option_margin_right);
	SET_SPIN(spinExportScale, option_export_scale);
	SET_CHECK(checkSuppressImages, option_suppress_images);
	SET_CHECK(checkRemoveBackgrounds, option_remove_backgrounds);
	SET_CHECK(checkFitPage, option_enable_loosening);
	SET_CHECK(checkCompressPDF, option_enable_PDF_compression);
	SET_CHECK(checkPasswordPDF, option_enable_PDF_password);
	SET_BUTTON(setDefaultExportOptions);
}
コード例 #9
0
ファイル: SndOut_DSound.cpp プロジェクト: mauzus/progenitor
	bool _ConfigProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
	{
		int wmId,wmEvent;
		int tSel = 0;

		switch(uMsg)
		{
			case WM_INITDIALOG:
			{
				wchar_t temp[128];

				char temp2[192];
				sprintf_s( temp2, "%S", m_Device.c_str() );
				haveGuid = ! FAILED(GUIDFromString(temp2,&DevGuid));
				SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_RESETCONTENT,0,0);

				ndevs=0;
				DirectSoundEnumerate( DSEnumCallback, NULL );

				tSel=-1;
				for(int i=0;i<ndevs;i++)
				{
					SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_ADDSTRING,0,(LPARAM)m_devices[i].name.c_str());
					if(haveGuid && IsEqualGUID(m_devices[i].guid,DevGuid))
						tSel = i;
				}

				if(tSel>=0)
					SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_SETCURSEL,tSel,0);

				INIT_SLIDER( IDC_BUFFERS_SLIDER, 2, MAX_BUFFER_COUNT, 2, 1, 1 );
				SendMessage(GetDlgItem(hWnd,IDC_BUFFERS_SLIDER),TBM_SETPOS,TRUE,m_NumBuffers);
				swprintf_s(temp, L"%d (%d ms latency)",m_NumBuffers, 1000 / (96000 / (m_NumBuffers * BufferSize)));
				SetWindowText(GetDlgItem(hWnd,IDC_LATENCY_LABEL),temp);

				SET_CHECK( IDC_GLOBALFOCUS_DISABLE, m_DisableGlobalFocus );
				SET_CHECK( IDC_USE_HARDWARE, m_UseHardware );
			}
			break;

			case WM_COMMAND:
			{
				wchar_t temp[128];

				wmId    = LOWORD(wParam);
				wmEvent = HIWORD(wParam);
				// Parse the menu selections:
				switch (wmId)
				{
					case IDOK:
					{
						int i = (int)SendMessage(GetDlgItem(hWnd,IDC_DS_DEVICE),CB_GETCURSEL,0,0);

						if(!m_devices[i].hasGuid)
						{
							m_Device[0] = 0; // clear device name to ""
						}
						else
						{
							swprintf_s(temp, L"{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
								m_devices[i].guid.Data1,
								m_devices[i].guid.Data2,
								m_devices[i].guid.Data3,
								m_devices[i].guid.Data4[0],
								m_devices[i].guid.Data4[1],
								m_devices[i].guid.Data4[2],
								m_devices[i].guid.Data4[3],
								m_devices[i].guid.Data4[4],
								m_devices[i].guid.Data4[5],
								m_devices[i].guid.Data4[6],
								m_devices[i].guid.Data4[7]
							);
							m_Device = temp;
						}

						m_NumBuffers = (int)SendMessage( GetDlgItem( hWnd, IDC_BUFFERS_SLIDER ), TBM_GETPOS, 0, 0 );

						if( m_NumBuffers < 2 ) m_NumBuffers = 2;
						if( m_NumBuffers > MAX_BUFFER_COUNT ) m_NumBuffers = MAX_BUFFER_COUNT;

						EndDialog(hWnd,0);
					}
					break;

					case IDCANCEL:
						EndDialog(hWnd,0);
					break;

					HANDLE_CHECK( IDC_GLOBALFOCUS_DISABLE, m_DisableGlobalFocus );
					HANDLE_CHECK( IDC_USE_HARDWARE, m_UseHardware );

					default:
						return FALSE;
				}
			}
			break;

			case WM_HSCROLL:
			{
				wmId    = LOWORD(wParam);
				wmEvent = HIWORD(wParam);
				switch(wmId)
				{
					//case TB_ENDTRACK:
					//case TB_THUMBPOSITION:
					case TB_LINEUP:
					case TB_LINEDOWN:
					case TB_PAGEUP:
					case TB_PAGEDOWN:
						wmEvent = (int)SendMessage((HWND)lParam,TBM_GETPOS,0,0);
					case TB_THUMBTRACK:
					{
						wchar_t temp[128];
						if( wmEvent < 2 ) wmEvent = 2;
						if( wmEvent > MAX_BUFFER_COUNT ) wmEvent = MAX_BUFFER_COUNT;
						SendMessage((HWND)lParam,TBM_SETPOS,TRUE,wmEvent);
						swprintf_s(temp,L"%d (%d ms latency)",wmEvent, 1000 / (96000 / (wmEvent * BufferSize)));
						SetWindowText(GetDlgItem(hWnd,IDC_LATENCY_LABEL),temp);
						break;
					}
					default:
						return FALSE;
				}
			}
			break;

			default:
				return FALSE;
		}
		return TRUE;
	}
コード例 #10
0
ファイル: ConfigDebug.cpp プロジェクト: 0xZERO3/PCSX2-rr-lua
static BOOL CALLBACK DialogProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
	int wmId,wmEvent;
	wchar_t temp[384]={0};

	switch(uMsg)
	{
		case WM_PAINT:
			return FALSE;

		case WM_INITDIALOG:
		{
			EnableControls( hWnd );

			// Debugging / Logging Flags:
			SET_CHECK(IDC_DEBUG,   DebugEnabled);
			SET_CHECK(IDC_MSGSHOW, _MsgToConsole);
			SET_CHECK(IDC_MSGKEY,  _MsgKeyOnOff);
			SET_CHECK(IDC_MSGVOICE,_MsgVoiceOff);
			SET_CHECK(IDC_MSGDMA,  _MsgDMA);
			SET_CHECK(IDC_MSGADMA, _MsgAutoDMA);
			SET_CHECK(IDC_DBG_OVERRUNS, _MsgOverruns );
			SET_CHECK(IDC_DBG_CACHE, _MsgCache );
			SET_CHECK(IDC_LOGREGS, _AccessLog);
			SET_CHECK(IDC_LOGDMA,  _DMALog);
			SET_CHECK(IDC_LOGWAVE, _WaveLog);
			SET_CHECK(IDC_DUMPCORE,_CoresDump);
			SET_CHECK(IDC_DUMPMEM, _MemDump);
			SET_CHECK(IDC_DUMPREGS,_RegDump);

			ShowWindow( GetDlgItem( hWnd, IDC_MSG_PUBLIC_BUILD ), !IsDevBuild );
		}
		break;

		case WM_COMMAND:
			wmId    = LOWORD(wParam); 
			wmEvent = HIWORD(wParam); 
			// Parse the menu selections:
			switch (wmId)
			{
				case IDOK:
					WriteSettings();
					EndDialog(hWnd,0);
				break;

				case IDCANCEL:
					EndDialog(hWnd,0);
				break;

				HANDLE_CHECKNB(IDC_MSGSHOW,_MsgToConsole);
					EnableMessages( hWnd );
				break;

				HANDLE_CHECK(IDC_MSGKEY,_MsgKeyOnOff);
				HANDLE_CHECK(IDC_MSGVOICE,_MsgVoiceOff);
				HANDLE_CHECKNB(IDC_MSGDMA,_MsgDMA);
					ENABLE_CONTROL(IDC_MSGADMA, MsgDMA());
				break;

				HANDLE_CHECK(IDC_MSGADMA,_MsgAutoDMA);
				HANDLE_CHECK(IDC_DBG_OVERRUNS,_MsgOverruns);
				HANDLE_CHECK(IDC_DBG_CACHE,_MsgCache);
				HANDLE_CHECK(IDC_LOGREGS,_AccessLog);
				HANDLE_CHECK(IDC_LOGDMA, _DMALog);
				HANDLE_CHECK(IDC_LOGWAVE,_WaveLog);
				HANDLE_CHECK(IDC_DUMPCORE,_CoresDump);
				HANDLE_CHECK(IDC_DUMPMEM, _MemDump);
				HANDLE_CHECK(IDC_DUMPREGS,_RegDump);
				default:
					return FALSE;
			}
		break;

		default:
			return FALSE;
	}
	return TRUE;

}
コード例 #11
0
ファイル: rc.c プロジェクト: gamma62/eda
/*
** set - set resource values or print as notification, usage: "set [resource [value(s)]]",
**	get help with "set help"
*/
int
set (const char *argz)
{
	char args[FNAMESIZE];
	char *token=NULL, *subtoken=NULL, *subsubtoken=NULL;
	int slen=0, restidx=-1, sublen=-1, subsublen=-1;
	int x=0, y=0, ri=0, ret=0;

	memset(args, 0, sizeof(args));
	strncpy(args, argz, sizeof(args)-2); /* reserve two zero bytes, we may overwrite one */

	slen = parse_token(args, "\x09 ", &restidx);

	/* special case separately: empty line */
	if (slen == 0) {
		if (cnf.bootup) set_usage(SHOW_CURRENT_VALUES);
		return (0);
	}

	args[slen] = '\0';
	token = &args[0];
	if (restidx > 0) {
		subtoken = &args[restidx];
		sublen = parse_token(subtoken, "\x09 ", &restidx);
		subtoken[sublen] = '\0'; /* restore delimiter if required */
		if (restidx > 0) {
			subsubtoken = &subtoken[restidx];
			subsublen = strlen(subsubtoken);
		}
	}

	if (token[0] == '?') {
		if (cnf.bootup) set_usage(SHOW_USAGE);
		return (0);
	} else if (slen < 3 || token[0] == '#') {
		/* 1 or 2 char resource names and comments will be ignored */
		return (0);
	}

	/*
	 * test each setting one by one, (slen >= 3) now
	 */
	if (strncmp(token, "prefix", 6)==0) {
		SET_CHECK_B( GSTAT_PREFIX );
		if (ret==0) {
			cnf.pref = (y==1) ? PREFIXSIZE : 0;
		}
		/* update! */
		for (ri=0; ri<RINGSIZE; ri++) {
			if (cnf.fdata[ri].fflag & FSTAT_OPEN)
				update_curpos(ri);
		}
		//if (cnf.bootup) tracemsg ("prefix %d", (cnf.gstat & GSTAT_PREFIX) ? 1 : 0);

	} else if (strncmp(token, "tabhead", 7)==0) {
		SET_CHECK_B( GSTAT_TABHEAD );
		if (ret==0) {
			cnf.head = (y==1) ? 2 : 1;
		}
		/* update! */
		for (ri=0; ri<RINGSIZE; ri++) {
			if (cnf.fdata[ri].focus > TEXTROWS-1)
				cnf.fdata[ri].focus = TEXTROWS;
		}
		//if (cnf.bootup) tracemsg ("tabhead %d", (cnf.gstat & GSTAT_TABHEAD) ? 1 : 0);

	} else if (strncmp(token, "shadow", 6)==0) {
		SET_CHECK_B( GSTAT_SHADOW );
		if (cnf.bootup) tracemsg ("shadow %d", (cnf.gstat & GSTAT_SHADOW) ? 1 : 0);

	} else if (strncmp(token, "smartindent", 5)==0) {
		SET_CHECK_B( GSTAT_SMARTIND );
		if (cnf.bootup) tracemsg ("smartind %d", (cnf.gstat & GSTAT_SMARTIND) ? 1 : 0);

	} else if (strncmp(token, "move_reset", 10)==0) {
		SET_CHECK_B( GSTAT_MOVES );
		if (cnf.bootup) tracemsg ("move_reset %d", (cnf.gstat & GSTAT_MOVES) ? 1 : 0);

	} else if (strncmp(token, "case_sensitive", 4)==0) {
		SET_CHECK_B( GSTAT_CASES );
		if (cnf.bootup) tracemsg ("case_sensitive %d", (cnf.gstat & GSTAT_CASES) ? 1 : 0);

	} else if (strncmp(token, "autotitle", 9)==0) {
		SET_CHECK_B( GSTAT_AUTOTITLE );
		if (cnf.bootup) tracemsg ("autotitle %d", (cnf.gstat & GSTAT_AUTOTITLE) ? 1 : 0);

	} else if (strncmp(token, "backup_nokeep", 13)==0) {
		SET_CHECK_B( GSTAT_NOKEEP );
		if (cnf.bootup) tracemsg ("backup_nokeep %d", (cnf.gstat & GSTAT_NOKEEP) ? 1 : 0);

	} else if (strncmp(token, "close_over", 10)==0) {
		SET_CHECK_B( GSTAT_CLOS_OVER );
		if (cnf.bootup) tracemsg ("close_over %d", (cnf.gstat & GSTAT_CLOS_OVER) ? 1 : 0);

	} else if (strncmp(token, "save_inode", 10)==0) {
		SET_CHECK_B( GSTAT_SAV_INODE );
		if (cnf.bootup) tracemsg ("save_inode %d", (cnf.gstat & GSTAT_SAV_INODE) ? 1 : 0);

	} else if (strncmp(token, "tabsize", 4)==0) {
		/* decimal */
		if (sublen > 0) {
			x = strtol(subtoken, NULL, 10);
			if (x < 2 || x > 16) {
				ret = 1;
			} else if (cnf.tabsize != x) {
				cnf.tabsize = x;
				if (cnf.bootup) {
					/* update! */
					for (ri=0; ri<RINGSIZE; ri++) {
						if (cnf.fdata[ri].fflag & FSTAT_OPEN)
							update_curpos(ri);
					}
				}
			}
		}
		if (cnf.bootup) tracemsg ("tabsize %d", cnf.tabsize);

	} else if (strncmp(token, "indent", 6)==0) {
		if (sublen > 0) {
			ret = 1;
			x = 0;
			if (strncmp(subtoken, "tab", 3)==0) {
				cnf.gstat |= GSTAT_INDENT;
				x = 1;
			} else if (strncmp(subtoken, "space", 5)==0) {
				cnf.gstat &= ~GSTAT_INDENT;
				x = 2;
			}
			if (x) {
				if (subsublen > 0) {
					x = strtol(subsubtoken, NULL, 10);
					if (x > 7) {
						cnf.indentsize = 8;
					} else if (x < 2) {
						cnf.indentsize = 1;
					} else {
						cnf.indentsize = x;
					}
					ret = 0;
				}
			}
		}
		if (cnf.bootup) tracemsg ("indent %s %d", ((cnf.gstat & GSTAT_INDENT) ? "tab" : "space"), cnf.indentsize);

	} else if (strncmp(token, "tags_file", 4)==0) {
		SET_CHECK( cnf.tags_file );

	} else if (strncmp(token, "find_opts", 9)==0) {
		if (sublen > 0) {
			subtoken[sublen] = ' '; /* overwrite zero, one multiword argument required */
			sublen = strlen(subtoken);
			SET_CHECK( cnf.find_opts );
		} else {
			if (cnf.bootup) tracemsg ("find_opts %s", cnf.find_opts);
		}
	} else if (!cnf.bootup && strncmp(token, "find_path", 9)==0) {
		SET_CHECK_X( cnf.find_path, sublen, subtoken );

	} else if (strncmp(token, "make_opts", 9)==0) {
		if (sublen > 0) {
			subtoken[sublen] = ' '; /* overwrite zero, one multiword argument required */
			sublen = strlen(subtoken);
			SET_CHECK( cnf.make_opts );
		} else {
			if (cnf.bootup) tracemsg ("make_opts %s", cnf.make_opts);
		}
	} else if (!cnf.bootup && strncmp(token, "make_path", 9)==0) {
		SET_CHECK_X( cnf.make_path, sublen, subtoken );

	} else if (!cnf.bootup && strncmp(token, "sh_path", 9)==0) {
		SET_CHECK_X( cnf.sh_path, sublen, subtoken );
	} else if (!cnf.bootup && strncmp(token, "diff_path", 9)==0) {
		SET_CHECK_X( cnf.diff_path, sublen, subtoken );

	/* vcs tool settings */
	} else if (!cnf.bootup && strncmp(token, "vcstool", 7)==0) {
		if (sublen > 0) {
			ret = 1;
			for(x=0; x < 10; x++) {
				y = strlen(cnf.vcs_tool[x]);
				if (y==0 || !strncmp(subtoken, cnf.vcs_tool[x], (size_t)y)) {
					break;
				}
			}
			if (x < 10 && subsublen > 0) {
				y = sizeof(cnf.vcs_tool[x]);
				strncpy(cnf.vcs_tool[x], subtoken, (size_t)y);
				cnf.vcs_tool[x][y-1] = '\0';
				ret = 0;
				SET_CHECK_X( cnf.vcs_path[x], subsublen, subsubtoken );
				if (ret != 0) {
					cnf.vcs_tool[x][0] = '\0';
					cnf.vcs_path[x][0] = '\0';
				}
			}
		}
	}

	/* terminal color settings, color palette string parser -- shared prefix "palette"
	*/
	else if (!cnf.bootup && strncmp(token, "palette", 7)==0) {
		if (sublen > 0) {
			if ((subtoken[x] >= '0') && (subtoken[x] <= '9')) {
				x = strtol(subtoken, NULL, 0);
				if (x >= 0 && x < cnf.palette_count)
					cnf.palette = x;
			} else {
				/* pass input string to parser */
				subtoken[sublen] = ' '; /* overwrite zero, one multiword argument required */
				ret = color_palette_parser(subtoken);
			}
		}
	}

	/* lsdir sort settings */
	else if (!strncmp(token, "sort", 4) || !strncmp(token, "lsdirsort", 9)) {
		if (sublen > 0) {
			x = strtol(subtoken, NULL, 0);
			if (x >= 0 && x <= 2) {
				if (x != cnf.lsdirsort) {
					cnf.lsdirsort = x;
				}
			}
		}
		if (cnf.bootup) tracemsg ("lsdirsort %d", cnf.lsdirsort);
	}

	/* syslog log levels by module */
	else if (strncmp(token, "log", 3)==0) {
		int size2=0;
		char mystring[100];
		size2 = sizeof(cnf.log) / sizeof(cnf.log[0]);
		if (sublen > 0) {
			subtoken[sublen] = ' '; /* overwrite zero, one multiword argument required */
			sublen = strlen(subtoken);
			for(x=0; x < size2; x++) {
				cnf.log[x] = 0;
			}
			for(x=0,y=0; subtoken[x] != '\0' && y < size2; x++) {
				/* skip not-a-number */
				if ((subtoken[x] >= '0') && (subtoken[x] <= '7')) {
					cnf.log[y] = (subtoken[x] - '0');
					y++;
				}
			}
		}
		if (cnf.bootup && size2 > 11) {
			snprintf(mystring, sizeof(mystring),
			"MAIN%d FH%d CMD%d HIST%d REPL%d TAGS%d SELE%d FILT%d PIPE%d PD%d REC%d UPD%d",
				cnf.log[0],cnf.log[1],cnf.log[2],cnf.log[3],cnf.log[4],cnf.log[5],
				cnf.log[6],cnf.log[7],cnf.log[8],cnf.log[9],cnf.log[10],cnf.log[11]);
			tracemsg ("log %s", mystring);
		}
	}

	else {
		if (cnf.bootup) {
			set_usage(SHOW_USAGE);
		} else {
			fprintf(stderr, "eda: rc [%s] [%s] ... bad token\n", token, subtoken);
			ret = 2;
		}
	}

	return (ret);
}/* set */
コード例 #12
0
ファイル: WebP_Out_Dialog.cpp プロジェクト: EzraCc/AdobeWebM
static BOOL CALLBACK DialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
    BOOL fError; 
 
    switch(message) 
    { 
		case WM_INITDIALOG:
			SET_CHECK(OUT_Lossless_Radio, g_lossless);
			SET_CHECK(OUT_Lossy_Radio, !g_lossless);

			SendMessage(GET_ITEM(OUT_Quality_Slider),(UINT)TBM_SETRANGEMIN, (WPARAM)(BOOL)FALSE, (LPARAM)0);
			SendMessage(GET_ITEM(OUT_Quality_Slider),(UINT)TBM_SETRANGEMAX, (WPARAM)(BOOL)FALSE, (LPARAM)100);
			SendMessage(GET_ITEM(OUT_Quality_Slider),(UINT)TBM_SETPOS, (WPARAM)(BOOL)TRUE, (LPARAM)g_quality);

			if(!g_have_transparency)
			{
				ENABLE_ITEM(OUT_Alpha_Radio_Transparency, FALSE);

				if(g_alpha == DIALOG_ALPHA_TRANSPARENCY)
				{
					g_alpha = (g_alpha_name != NULL ? DIALOG_ALPHA_CHANNEL : DIALOG_ALPHA_NONE);
				}
			}

			if(g_alpha_name == NULL)
			{
				ENABLE_ITEM(OUT_Alpha_Radio_Channel, FALSE);

				if(g_alpha == DIALOG_ALPHA_CHANNEL)
				{
					g_alpha = (g_have_transparency ? DIALOG_ALPHA_TRANSPARENCY : DIALOG_ALPHA_NONE);
				}
			}
			else
			{
				SetDlgItemText(hwndDlg, OUT_Alpha_Radio_Channel, g_alpha_name);
			}

			SET_CHECK( (g_alpha == DIALOG_ALPHA_NONE ? OUT_Alpha_Radio_None :
						g_alpha == DIALOG_ALPHA_TRANSPARENCY ? OUT_Alpha_Radio_Transparency :
						g_alpha == DIALOG_ALPHA_CHANNEL ? OUT_Alpha_Radio_Channel :
						OUT_Alpha_Radio_None), TRUE);

			SET_CHECK(OUT_Alpha_Cleanup_Check, g_alpha_cleanup);
			SET_CHECK(OUT_Lossy_Alpha_Check, g_lossy_alpha);
			SET_CHECK(OUT_Save_Metadata_Check, g_save_metadata);

			TrackLossless(hwndDlg);
			TrackSlider(hwndDlg);
			TrackAlpha(hwndDlg);

			return TRUE;
 
		case WM_NOTIFY:
			switch(LOWORD(wParam))
			{
				case OUT_Quality_Slider:
					TrackSlider(hwndDlg);
				return TRUE;
			}
		return FALSE;

        case WM_COMMAND: 
			g_item_clicked = LOWORD(wParam);

            switch(g_item_clicked)
            { 
                case OUT_OK: 
				case OUT_Cancel:  // do the same thing, but g_item_clicked will be different
					g_lossless = GET_CHECK(OUT_Lossless_Radio);
					g_quality = SendMessage(GET_ITEM(OUT_Quality_Slider), TBM_GETPOS, (WPARAM)0, (LPARAM)0 );

					g_alpha =	GET_CHECK(OUT_Alpha_Radio_None) ? DIALOG_ALPHA_NONE :
								GET_CHECK(OUT_Alpha_Radio_Transparency) ? DIALOG_ALPHA_TRANSPARENCY :
								GET_CHECK(OUT_Alpha_Radio_Channel) ? DIALOG_ALPHA_CHANNEL :
								DIALOG_ALPHA_TRANSPARENCY;

					g_alpha_cleanup = GET_CHECK(OUT_Alpha_Cleanup_Check);
					g_lossy_alpha = GET_CHECK(OUT_Lossy_Alpha_Check);
					g_save_metadata = GET_CHECK(OUT_Save_Metadata_Check);

					EndDialog(hwndDlg, 0);
					return TRUE;


				case OUT_Lossless_Radio:
				case OUT_Lossy_Radio:
					TrackLossless(hwndDlg);
					return TRUE;

				case OUT_Alpha_Radio_None:
				case OUT_Alpha_Radio_Transparency:
				case OUT_Alpha_Radio_Channel:
					TrackAlpha(hwndDlg);

				case OUT_Quality_Field:
					TrackField(hwndDlg);
					return TRUE;
            } 
    } 
    return FALSE; 
}