void AP_UnixDialog_Lists::updateFromDocument(void) { PopulateDialogData(); _setRadioButtonLabels(); setNewListType(getDocListType()); loadXPDataIntoLocal(); }
void AP_UnixDialog_Lists::runModal( XAP_Frame * pFrame) { FL_ListType savedListType; setModal(); GtkWidget * mainWindow = _constructWindow(); UT_return_if_fail(mainWindow); clearDirty(); // Populate the dialog m_bDontUpdate = false; loadXPDataIntoLocal(); // Need this to stop this being stomped during the contruction of preview widget savedListType = getNewListType(); // *** this is how we add the gc for Lists Preview *** // attach a new graphics context to the drawing area XAP_UnixApp * unixapp = static_cast<XAP_UnixApp *> (m_pApp); UT_ASSERT(unixapp); // Now Display the dialog, so m_wPreviewArea->window exists gtk_widget_show(m_wMainWindow); UT_ASSERT(m_wPreviewArea && m_wPreviewArea->window); // make a new Unix GC GR_UnixCairoAllocInfo ai(m_wPreviewArea); m_pPreviewWidget = (GR_CairoGraphics*) XAP_App::getApp()->newGraphics(ai); // let the widget materialize _createPreviewFromGC(m_pPreviewWidget, static_cast<UT_uint32>(m_wPreviewArea->allocation.width), static_cast<UT_uint32>(m_wPreviewArea->allocation.height)); // Restore our value setNewListType(savedListType); gint response; do { response = abiRunModalDialog (GTK_DIALOG(mainWindow), pFrame, this, BUTTON_CANCEL, false); } while (response == BUTTON_RESET); AP_Dialog_Lists::tAnswer res = getAnswer(); m_glFonts.clear(); abiDestroyWidget ( mainWindow ) ; setAnswer(res); DELETEP (m_pPreviewWidget); }
void AP_UnixDialog_Lists::customChanged(void) { fillUncustomizedValues(); loadXPDataIntoLocal(); }
void AP_UnixDialog_Lists::styleChanged(gint type) { // // code to change list list // if(type == 0) { m_wListStyle_menu = m_wListStyleNone_menu; gtk_combo_box_set_model(m_wListStyleBox, GTK_TREE_MODEL(m_wListStyleNone_menu.obj())); gtk_combo_box_set_active(m_wListTypeBox, 0); setNewListType(NOT_A_LIST); gtk_widget_set_sensitive(GTK_WIDGET(m_wFontOptions), false); gtk_widget_set_sensitive(m_wStartSpin, false); gtk_widget_set_sensitive(m_wDelimEntry, false); gtk_widget_set_sensitive(m_wDecimalEntry, false); } else if(type == 1) { m_wListStyle_menu = m_wListStyleBulleted_menu; gtk_combo_box_set_model(m_wListStyleBox, GTK_TREE_MODEL(m_wListStyleBulleted_menu.obj())); gtk_combo_box_set_active(m_wListTypeBox, 1); setNewListType(BULLETED_LIST); gtk_widget_set_sensitive(GTK_WIDGET(m_wFontOptions), false); gtk_widget_set_sensitive(m_wStartSpin, false); gtk_widget_set_sensitive(m_wDelimEntry, false); gtk_widget_set_sensitive(m_wDecimalEntry, false); } else if(type == 2) { // gtk_widget_destroy(GTK_WIDGET(m_wListStyleNumbered_menu)); // m_wListStyleNumbered_menu = gtk_menu_new(); m_wListStyle_menu = m_wListStyleNumbered_menu; // _fillNumberedStyleMenu(m_wListStyleNumbered_menu); // Block events during this manual change gtk_combo_box_set_model (m_wListStyleBox, GTK_TREE_MODEL(m_wListStyleNumbered_menu.obj())); gtk_combo_box_set_active(m_wListTypeBox, 2); setNewListType(NUMBERED_LIST); gtk_widget_set_sensitive(GTK_WIDGET(m_wFontOptions), true); gtk_widget_set_sensitive(m_wStartSpin, true); gtk_widget_set_sensitive(m_wDelimEntry, true); gtk_widget_set_sensitive(m_wDecimalEntry, true); } // // This methods needs to be called from loadXPDataIntoLocal to set the correct // list style. However if we are doing this we definately don't want to call // loadXPDataIntoLocal again! Luckily we can just check this to make sure this is // not happenning. // if(!dontUpdate()) { fillUncustomizedValues(); // Set defaults loadXPDataIntoLocal(); // load them into the widget previewExposed(); // Show current setting } }