// This handles the WM_INITDIALOG message for the top-level dialog. BOOL AP_Win32Dialog_InsertTable::_onInitDialog(HWND hWnd, WPARAM wParam, LPARAM lParam) { const XAP_StringSet * pSS = m_pApp->getStringSet(); char szValue[BUFSIZE]; m_hwndDlg = hWnd; // localize controls _DSX(BTN_OK, DLG_OK); _DSX(BTN_CANCEL, DLG_Cancel); _DS(TEXT_SIZE, DLG_InsertTable_TableSize); _DS(TEXT_COLUMN, DLG_InsertTable_NumCols); _DS(TEXT_ROW, DLG_InsertTable_NumRows); _DS(TEXT_AUTOFIT, DLG_InsertTable_AutoFit); _DS(RADIO_AUTO, DLG_InsertTable_AutoColSize); _DS(RADIO_FIXED, DLG_InsertTable_FixedColSize); // Localise caption SetWindowText(hWnd, pSS->getValue(AP_STRING_ID_DLG_InsertTable_TableTitle)); // Set Spin range (TODO: check if the max value is correct, copied from the unix version) SendMessage(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_SPIN_COLUMN),UDM_SETRANGE,(WPARAM)0,(LPARAM)MAKELONG((short)64,(short)1)); SendMessage(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_SPIN_ROW),UDM_SETRANGE,(WPARAM)0,(LPARAM)MAKELONG((short)500,(short)1)); SendMessage(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_SPIN_SIZE),UDM_SETRANGE,(WPARAM)0,(LPARAM)MAKELONG((short)9999,(short)1)); // Limit to four chars SendMessage(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_TEXT_COLUMN),EM_LIMITTEXT,(WPARAM)5,(WPARAM)0); SendMessage(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_TEXT_ROW),EM_LIMITTEXT,(WPARAM)5,(WPARAM)0); SendMessage(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_TEXT_SIZE),EM_LIMITTEXT,(WPARAM)5,(WPARAM)0); CheckRadioButton(hWnd, AP_RID_DIALOG_INSERTTABLE_RADIO_AUTO, AP_RID_DIALOG_INSERTTABLE_RADIO_FIXED, AP_RID_DIALOG_INSERTTABLE_RADIO_AUTO); SetFocus(GetDlgItem(hWnd,AP_RID_DIALOG_INSERTTABLE_VAL_COLUMN)); SendDlgItemMessage(hWnd, AP_RID_DIALOG_INSERTTABLE_VAL_COLUMN, EM_SETSEL, 0, -1); // Set default values sprintf(szValue, "%u", getNumCols()); SetDlgItemText(hWnd, AP_RID_DIALOG_INSERTTABLE_VAL_COLUMN, szValue); sprintf(szValue, "%u", getNumRows()); SetDlgItemText(hWnd, AP_RID_DIALOG_INSERTTABLE_VAL_ROW, szValue); sprintf(szValue, "%02.2f", getColumnWidth()); SetDlgItemText(hWnd, AP_RID_DIALOG_INSERTTABLE_VAL_SIZE, szValue); /* Units name*/ SetDlgItemText(hWnd, AP_RID_DIALOG_INSERTTABLE_TEXT_UNITS, UT_dimensionName(m_dim)); /* Autosize by default*/ EnableWindow(GetDlgItem(m_hwndDlg,AP_RID_DIALOG_INSERTTABLE_VAL_SIZE), FALSE); EnableWindow(GetDlgItem(m_hwndDlg,AP_RID_DIALOG_INSERTTABLE_SPIN_SIZE), FALSE); XAP_Win32DialogHelper::s_centerDialog(hWnd); return 0; // 0 because we called SetFocus }
bool AP_Win32Prefs::loadBuiltinPrefs(void) { char szLocaleInfo[64]; // Call base function bool ret = AP_Prefs::loadBuiltinPrefs(); // Add information from Win32 system and user setup if( GetLocaleInfo( LOCALE_USER_DEFAULT, LOCALE_IMEASURE, szLocaleInfo, sizeof( szLocaleInfo ) / sizeof( szLocaleInfo[0] ) ) ) { m_builtinScheme->setValue( AP_PREF_KEY_RulerUnits, UT_dimensionName( szLocaleInfo[0] == '0' ? DIM_CM : DIM_IN ) ); } if (UT_getISO639Language(szLocaleInfo)) { bool bFallBackLocale = false; if (UT_getISO3166Country(&szLocaleInfo[3])) szLocaleInfo[2] = '-'; UT_DEBUGMSG(("Prefs: Using LOCALE info from environment [%s]\n", szLocaleInfo)); AP_Win32App * pApp = static_cast<AP_Win32App*>(XAP_App::getApp()); UT_return_val_if_fail (pApp, false); /* Do we have a string set for this locale?*/ if (!pApp->doesStringSetExist(szLocaleInfo)) { const char* pFallBackLocale = UT_getFallBackStringSetLocale(szLocaleInfo); if (pFallBackLocale) { /* If there is no stringset, try the fallback locale*/ if (pApp->doesStringSetExist(pFallBackLocale)) { m_builtinScheme->setValue( AP_PREF_KEY_StringSet, pFallBackLocale); bFallBackLocale = true; } } } if (!bFallBackLocale) m_builtinScheme->setValue( AP_PREF_KEY_StringSet, szLocaleInfo ); } else { UT_ASSERT_HARMLESS(UT_SHOULD_NOT_HAPPEN); } return ret; }
void s_XSL_FO_Listener::_handlePageSize(PT_AttrPropIndex api) { // // Code to write out the PageSize Definitions to disk // const PP_AttrProp * pAP = NULL; bool bHaveProp = m_pDocument->getAttrProp(api,&pAP); UT_LocaleTransactor t(LC_NUMERIC, "C"); UT_UTF8String master = "simple-page-master"; _tagOpen(TT_LAYOUT_MASTER_SET, "layout-master-set"); // query and output properties // todo - validate these and make sure they all make sense if (bHaveProp && pAP) { const gchar * szValue = NULL; szValue = PP_evalProperty("page-margin-top", NULL, NULL, pAP, m_pDocument, true); if(szValue) { master += " margin-top=\""; master += szValue; master += "\""; } szValue = PP_evalProperty("page-margin-bottom", NULL, NULL, pAP, m_pDocument, true); if(szValue) { master += " margin-bottom=\""; master += szValue; master += "\""; } szValue = PP_evalProperty("page-margin-left", NULL, NULL, pAP, m_pDocument, true); if(szValue) { master += " margin-left=\""; master += szValue; master += "\""; } szValue = PP_evalProperty("page-margin-right", NULL, NULL, pAP, m_pDocument, true); if(szValue) { master += " margin-right=\""; master += szValue; master += "\""; } UT_Dimension docUnit = m_pDocument->m_docPageSize.getDims(); UT_UTF8String buf; // page-width, page-height UT_UTF8String_sprintf(buf, " page-width=\"%f%s\"", m_pDocument->m_docPageSize.Width(docUnit), UT_dimensionName(docUnit)); master += buf; buf.clear(); UT_UTF8String_sprintf(buf, " page-height=\"%f%s\"", m_pDocument->m_docPageSize.Height(docUnit), UT_dimensionName(docUnit)); master += buf; } master += " master-name=\"first\""; _tagOpen(TT_SIMPLE_PAGE_MASTER, master); m_pie->write("\t"); _tagOpenClose("region-body"); _tagClose(TT_SIMPLE_PAGE_MASTER, "simple-page-master"); _tagClose(TT_LAYOUT_MASTER_SET, "layout-master-set"); m_pie->write("\n"); m_bFirstWrite = false; }
GtkWidget * AP_UnixDialog_InsertTable::_constructWindow(void) { GtkWidget * window; const XAP_StringSet * pSS = m_pApp->getStringSet(); #if GTK_CHECK_VERSION(3,0,0) GtkBuilder * builder = newDialogBuilder("ap_UnixDialog_InsertTable.ui"); #else GtkBuilder * builder = newDialogBuilder("ap_UnixDialog_InsertTable-2.ui"); #endif // Update our member variables with the important widgets that // might need to be queried or altered later window = GTK_WIDGET(gtk_builder_get_object(builder, "ap_UnixDialog_InsertTable")); GtkWidget * widget = GTK_WIDGET(gtk_builder_get_object(builder, "rbAutoColSize")); UT_ASSERT(widget); // it shouldn't happen if things are propoerly installed. m_radioGroup = gtk_radio_button_get_group (GTK_RADIO_BUTTON (widget)); m_pColSpin = GTK_WIDGET(gtk_builder_get_object(builder, "sbNumCols")); m_pRowSpin = GTK_WIDGET(gtk_builder_get_object(builder, "sbNumRows")); m_pColWidthSpin = GTK_WIDGET(gtk_builder_get_object(builder, "sbColSize")); gtk_spin_button_set_value(GTK_SPIN_BUTTON(m_pColSpin), getNumCols()); gtk_spin_button_set_value(GTK_SPIN_BUTTON(m_pRowSpin), getNumRows()); GtkWidget *rbAutoColSize = GTK_WIDGET(gtk_builder_get_object(builder, "rbAutoColSize")); UT_ASSERT(rbAutoColSize); s_auto_colsize_toggled (GTK_TOGGLE_BUTTON (rbAutoColSize), m_pColWidthSpin); g_signal_connect (G_OBJECT (rbAutoColSize), "toggled", G_CALLBACK (s_auto_colsize_toggled), m_pColWidthSpin); // set the dialog title std::string s; pSS->getValueUTF8(AP_STRING_ID_DLG_InsertTable_TableTitle,s); abiDialogSetTitle(window, "%s", s.c_str()); // Units gtk_label_set_text (GTK_LABEL (GTK_WIDGET(gtk_builder_get_object(builder, "lbInch"))), UT_dimensionName(m_dim)); double spinstep = getSpinIncr (); gtk_spin_button_set_increments (GTK_SPIN_BUTTON(m_pColWidthSpin), spinstep, spinstep * 5); double spinmin = getSpinMin (); gtk_spin_button_set_range (GTK_SPIN_BUTTON(m_pColWidthSpin), spinmin, spinmin * 1000); gtk_spin_button_set_value(GTK_SPIN_BUTTON(m_pColWidthSpin), m_columnWidth); // localize the strings in our dialog, and set tags for some widgets localizeLabelMarkup(GTK_WIDGET(gtk_builder_get_object(builder, "lbTableSize")), pSS, AP_STRING_ID_DLG_InsertTable_TableSize); localizeLabel(GTK_WIDGET(gtk_builder_get_object(builder, "lbNumCols")), pSS, AP_STRING_ID_DLG_InsertTable_NumCols); localizeLabel(GTK_WIDGET(gtk_builder_get_object(builder, "lbNumRows")), pSS, AP_STRING_ID_DLG_InsertTable_NumRows); localizeLabelMarkup(GTK_WIDGET(gtk_builder_get_object(builder, "lbAutoFit")), pSS, AP_STRING_ID_DLG_InsertTable_AutoFit); localizeButton(GTK_WIDGET(gtk_builder_get_object(builder, "rbAutoColSize")), pSS, AP_STRING_ID_DLG_InsertTable_AutoColSize); g_object_set_data (G_OBJECT (GTK_WIDGET(gtk_builder_get_object(builder, "rbAutoColSize"))), WIDGET_ID_TAG_KEY, GINT_TO_POINTER(b_AUTOSIZE)); localizeButton(GTK_WIDGET(gtk_builder_get_object(builder, "rbFixedColSize")), pSS, AP_STRING_ID_DLG_InsertTable_FixedColSize); g_object_set_data (G_OBJECT (GTK_WIDGET(gtk_builder_get_object(builder, "rbFixedColSize"))), WIDGET_ID_TAG_KEY, GINT_TO_POINTER(b_FIXEDSIZE)); localizeButtonUnderline(GTK_WIDGET(gtk_builder_get_object(builder, "btInsert")), pSS, AP_STRING_ID_DLG_InsertButton); g_object_unref(G_OBJECT(builder)); return window; }
void AP_Dialog_Options::_storeWindowData(void) { XAP_Prefs *pPrefs = m_pApp->getPrefs(); UT_return_if_fail (pPrefs); AP_FrameData *pFrameData = NULL; if(m_pFrame) { pFrameData = (AP_FrameData *)m_pFrame->getFrameData(); UT_return_if_fail (pFrameData); } XAP_PrefsScheme *pPrefsScheme = pPrefs->getCurrentScheme(); UT_return_if_fail (pPrefsScheme); // turn off all notification to PrefListeners via XAP_Prefs pPrefs->startBlockChange(); // before we continue to remember all the changed values, check to see if // we have turned OFF PrefsAutoSave. If so, toggle that value, then force // a prefs save, then update everything else // [email protected] if ( pPrefs->getAutoSavePrefs() == true && _gatherPrefsAutoSave() == false ) { pPrefs->setAutoSavePrefs( false ); pPrefs->savePrefsFile(); // TODO: check the results } else { // otherwise, just set the value pPrefs->setAutoSavePrefs( _gatherPrefsAutoSave() ); } // try again to make sure we've got an updatable scheme pPrefsScheme = pPrefs->getCurrentScheme(true); UT_return_if_fail (pPrefsScheme); // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // save the values to the Prefs classes Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_AutoSpellCheck, _gatherSpellCheckAsType() ); Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_AutoGrammarCheck, _gatherGrammarCheck() ); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_SmartQuotesEnable, _gatherSmartQuotes() ); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_CustomSmartQuotes, _gatherCustomSmartQuotes() ); Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_SpellCheckCaps, _gatherSpellUppercase() ); Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_SpellCheckNumbers, _gatherSpellNumbers() ); Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_CursorBlink, _gatherViewCursorBlink() ); // Not implemented for UNIX or Win32. No need for it. #if !defined(TOOLKIT_GTK) && !defined(TOOLKIT_COCOA) && !defined (TOOLKIT_WIN) Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_RulerVisible, _gatherViewShowRuler() ); UT_uint32 i; for (i = 0; i < m_pApp->getToolbarFactory()->countToolbars(); i++) { Save_Pref_Bool( pPrefsScheme, m_pApp->getToolbarFactory()->prefKeyForToolbar(i), _gatherViewShowToolbar(i)); } Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_StatusBarVisible, _gatherViewShowStatusBar() ); #endif Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_ParaVisible, _gatherViewUnprintable() ); #if defined(TOOLKIT_GTK) Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_EnableSmoothScrolling, _gatherEnableSmoothScrolling() ); #endif Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_InsertModeToggle, _gatherEnableOverwrite() ); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_AutoLoadPlugins, _gatherAutoLoadPlugins() ); Save_Pref_Bool( pPrefsScheme, AP_PREF_KEY_DefaultDirectionRtl, _gatherOtherDirectionRtl() ); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_ChangeLanguageWithKeyboard, _gatherLanguageWithKeyboard() ); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_DirMarkerAfterClosingParenthesis, _gatherDirMarkerAfterClosingParenthesis()); // JOAQUIN - fix this: Dom UT_DEBUGMSG(("Saving Auto Save File [%i]\n", _gatherAutoSaveFile())); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_AutoSaveFile, _gatherAutoSaveFile() ); UT_String stVal; _gatherAutoSaveFileExt(stVal); UT_DEBUGMSG(("Saving Auto Save File Ext [%s]\n", stVal.c_str())); pPrefsScheme->setValue(XAP_PREF_KEY_AutoSaveFileExt, stVal.c_str()); _gatherAutoSaveFilePeriod(stVal); UT_DEBUGMSG(("Saving Auto Save File with a period of [%s]\n", stVal.c_str())); pPrefsScheme->setValue(XAP_PREF_KEY_AutoSaveFilePeriod, stVal.c_str()); // Jordi: win32 specific for now _gatherUILanguage(stVal); if (stVal.length()) { UT_DEBUGMSG(("Setting default UI language to [%s]\n", stVal.c_str())); pPrefsScheme->setValue(AP_PREF_KEY_StringSet, stVal.c_str()); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // If we changed whether the ruler is to be visible // or hidden, then update the current window: // (If we didn't change anything, leave it alone) #if !defined(TOOLKIT_GTK) && !defined(TOOLKIT_COCOA) && !defined (TOOLKIT_WIN) if (pFrameData && _gatherViewShowRuler() != pFrameData->m_bShowRuler ) { pFrameData->m_bShowRuler = _gatherViewShowRuler() ; if (!pFrameData->m_bIsFullScreen) { m_pFrame->toggleRuler(pFrameData->m_bShowRuler); } } // Same for status bar if (pFrameData && _gatherViewShowStatusBar() != pFrameData->m_bShowStatusBar) { pFrameData->m_bShowStatusBar = _gatherViewShowStatusBar(); if (!pFrameData->m_bIsFullScreen) { m_pFrame->toggleStatusBar(pFrameData->m_bShowStatusBar); } } if(pFrameData) { for (i = 0; i < m_pApp->getToolbarFactory()->countToolbars(); i++) { if (_gatherViewShowToolbar(i) != pFrameData->m_bShowBar[i]) { pFrameData->m_bShowBar[i] = _gatherViewShowToolbar(i); if (!pFrameData->m_bIsFullScreen) { m_pFrame->toggleBar(i, pFrameData->m_bShowBar[i]); } } } } #endif if (pFrameData && _gatherViewUnprintable() != pFrameData->m_bShowPara ) { pFrameData->m_bShowPara = _gatherViewUnprintable() ; AV_View * pAVView = m_pFrame->getCurrentView(); UT_return_if_fail (pAVView); FV_View * pView = static_cast<FV_View *> (pAVView); pView->setShowPara(pFrameData->m_bShowPara); } #if defined(TOOLKIT_GTK) if ( _gatherEnableSmoothScrolling() != XAP_App::getApp()->isSmoothScrollingEnabled() ) { XAP_App::getApp()->setEnableSmoothScrolling(_gatherEnableSmoothScrolling()); } #endif // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // save ruler units value pPrefsScheme->setValue((gchar*)AP_PREF_KEY_RulerUnits, (gchar*)UT_dimensionName( _gatherViewRulerUnits()) ); // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // save screen color pPrefsScheme->setValue((gchar*)XAP_PREF_KEY_ColorForTransparent, _gatherColorForTransparent() ); // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // allow XAP_Prefs to notify all the listeners of changes // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // TODO: change to snprintf gchar szBuffer[40]; sprintf( szBuffer, "%i", _gatherNotebookPageNum() ); pPrefsScheme->setValue((gchar*)AP_PREF_KEY_OptionsTabNumber, (gchar*)szBuffer ); // allow the prefListeners to receive their calls pPrefs->endBlockChange(); // if we hit the Save button, then force a save after the gather if ( m_answer == a_SAVE ) { pPrefs->savePrefsFile(); // TODO: check the results } }
/* Needed for instant apply and friends. It gathers the value of the widget associated with * the tControl gived and sets it as pref */ void AP_Dialog_Options::_storeDataForControl (tControl id) { UT_String stVal; XAP_Prefs *pPrefs = m_pApp->getPrefs(); UT_return_if_fail (pPrefs); AP_FrameData *pFrameData = NULL; if(m_pFrame) { pFrameData = (AP_FrameData *)m_pFrame->getFrameData(); UT_return_if_fail (pFrameData); } XAP_PrefsScheme *pPrefsScheme = pPrefs->getCurrentScheme(); UT_return_if_fail (pPrefsScheme); // turn off all notification to PrefListeners via XAP_Prefs pPrefs->startBlockChange(); switch (id) { case id_CHECK_SPELL_CHECK_AS_TYPE: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_AutoSpellCheck, _gatherSpellCheckAsType()); break; case id_CHECK_GRAMMAR_CHECK: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_AutoGrammarCheck, _gatherGrammarCheck()); break; case id_CHECK_SMART_QUOTES_ENABLE: Save_Pref_Bool (pPrefsScheme, XAP_PREF_KEY_SmartQuotesEnable, _gatherSmartQuotes()); break; case id_CHECK_CUSTOM_SMART_QUOTES: Save_Pref_Bool (pPrefsScheme, XAP_PREF_KEY_CustomSmartQuotes, _gatherCustomSmartQuotes()); break; case id_LIST_VIEW_OUTER_QUOTE_STYLE: pPrefsScheme->setValueInt ((gchar*)XAP_PREF_KEY_OuterQuoteStyle, _gatherOuterQuoteStyle()); break; case id_LIST_VIEW_INNER_QUOTE_STYLE: pPrefsScheme->setValueInt ((gchar*)XAP_PREF_KEY_InnerQuoteStyle, _gatherInnerQuoteStyle()); break; case id_CHECK_SPELL_UPPERCASE: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_SpellCheckCaps, _gatherSpellUppercase()); break; case id_CHECK_SPELL_NUMBERS: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_SpellCheckNumbers, _gatherSpellNumbers()); break; case id_CHECK_OTHER_DEFAULT_DIRECTION_RTL: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_DefaultDirectionRtl, _gatherOtherDirectionRtl()); break; case id_CHECK_AUTO_SAVE_FILE: UT_DEBUGMSG(("Saving Auto Save File [%i]\n", _gatherAutoSaveFile())); Save_Pref_Bool( pPrefsScheme, XAP_PREF_KEY_AutoSaveFile, _gatherAutoSaveFile() ); break; case id_TEXT_AUTO_SAVE_FILE_EXT: _gatherAutoSaveFileExt(stVal); UT_DEBUGMSG(("Saving Auto Save File Ext [%s]\n", stVal.c_str())); pPrefsScheme->setValue(XAP_PREF_KEY_AutoSaveFileExt, stVal.c_str()); break; case id_TEXT_AUTO_SAVE_FILE_PERIOD: _gatherAutoSaveFilePeriod(stVal); UT_DEBUGMSG(("Saving Auto Save File with a period of [%s]\n", stVal.c_str())); pPrefsScheme->setValue(XAP_PREF_KEY_AutoSaveFilePeriod, stVal.c_str()); break; case id_CHECK_VIEW_SHOW_RULER: #if !defined(TOOLKIT_GTK) && !defined(TOOLKIT_COCOA) && !defined (TOOLKIT_WIN) { bool tmpbool = _gatherViewShowRuler(); Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_RulerVisible, tmpbool); if (pFrameData && (tmpbool != pFrameData->m_bShowRuler)) { pFrameData->m_bShowRuler = _gatherViewShowRuler() ; m_pFrame->toggleRuler(pFrameData->m_bShowRuler); } } #endif break; case id_LIST_VIEW_RULER_UNITS: pPrefsScheme->setValue ((gchar*)AP_PREF_KEY_RulerUnits, (gchar*)UT_dimensionName (_gatherViewRulerUnits())); break; case id_CHECK_VIEW_CURSOR_BLINK: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_CursorBlink, _gatherViewCursorBlink()); break; case id_CHECK_VIEW_SHOW_STATUS_BAR: #if !defined(TOOLKIT_GTK) && !defined(TOOLKIT_COCOA) && !defined (TOOLKIT_WIN) { bool tmpbool = _gatherViewShowStatusBar(); Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_StatusBarVisible, tmpbool); if (pFrameData && (tmpbool != pFrameData->m_bShowStatusBar)) { pFrameData->m_bShowStatusBar = tmpbool; m_pFrame->toggleStatusBar(pFrameData->m_bShowStatusBar); } } #endif break; case id_PUSH_CHOOSE_COLOR_FOR_TRANSPARENT: pPrefsScheme->setValue ((gchar*)XAP_PREF_KEY_ColorForTransparent, _gatherColorForTransparent()); break; case id_CHECK_VIEW_UNPRINTABLE: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_ParaVisible, _gatherViewUnprintable()); break; case id_CHECK_ENABLE_SMOOTH_SCROLLING: #if defined(TOOLKIT_GTK) Save_Pref_Bool (pPrefsScheme, XAP_PREF_KEY_EnableSmoothScrolling, _gatherEnableSmoothScrolling()); #endif break; case id_CHECK_ENABLE_OVERWRITE: Save_Pref_Bool (pPrefsScheme, AP_PREF_KEY_InsertModeToggle, _gatherEnableOverwrite() ); break; case id_CHECK_AUTO_LOAD_PLUGINS: Save_Pref_Bool (pPrefsScheme, XAP_PREF_KEY_AutoLoadPlugins, _gatherAutoLoadPlugins() ); break; case id_CHECK_LANG_WITH_KEYBOARD: Save_Pref_Bool (pPrefsScheme, XAP_PREF_KEY_ChangeLanguageWithKeyboard, _gatherLanguageWithKeyboard() ); break; case id_CHECK_DIR_MARKER_AFTER_CLOSING_PARENTHESIS: Save_Pref_Bool (pPrefsScheme, XAP_PREF_KEY_DirMarkerAfterClosingParenthesis, _gatherDirMarkerAfterClosingParenthesis()); break; case id_NOTEBOOK: gchar szBuffer[40]; sprintf( szBuffer, "%i", _gatherNotebookPageNum() ); pPrefsScheme->setValue ((gchar*)AP_PREF_KEY_OptionsTabNumber, (gchar*)szBuffer ); break; // Ignore window controls/special buttons case id_BUTTON_SAVE: case id_BUTTON_DEFAULTS: case id_BUTTON_OK: case id_BUTTON_CANCEL: case id_BUTTON_APPLY: case id_BUTTON_SPELL_AUTOREPLACE: case id_CHECK_COLOR_FOR_TRANSPARENT_IS_WHITE: case id_TEXT_AUTO_SAVE_FILE_PERIOD_SPIN: // needed by Cocoa FE // Not implemented case id_CHECK_PREFS_AUTO_SAVE: case id_CHECK_SPELL_HIDE_ERRORS: case id_CHECK_SPELL_MAIN_ONLY: case id_CHECK_SPELL_SUGGEST: case id_CHECK_VIEW_ALL: case id_CHECK_VIEW_HIDDEN_TEXT: case id_COMBO_PREFS_SCHEME: // Dummy case, dummy comment :) case id_last: UT_DEBUGMSG (("WARNING: _storeDataForControl not implemented for this control\n")); default: break; } // allow the prefListeners to receive their calls and pPrefs->endBlockChange(); pPrefs->savePrefsFile(); }