void wxMenuItem::SetItemLabel(const wxString& label) { char mnem = wxFindMnemonic (label); wxString label2 = wxStripMenuCodes(label); m_text = label; if (m_buttonWidget) { wxXmString label_str(label2); XtVaSetValues ((Widget) m_buttonWidget, XmNlabelString, label_str(), NULL); if (mnem != 0) XtVaSetValues ((Widget) m_buttonWidget, XmNmnemonic, mnem, NULL); char *accel = wxFindAccelerator (label2); if (accel) XtVaSetValues ((Widget) m_buttonWidget, XmNaccelerator, accel, NULL); XmString accel_str = wxFindAcceleratorText (label2); if (accel_str) { XtVaSetValues ((Widget) m_buttonWidget, XmNacceleratorText, accel_str, NULL); XmStringFree (accel_str); } } }
void wxStaticText::DoSetLabel(const wxString& str) { // build our own cleaned label wxXmString label_str(RemoveMnemonics(str)); // This variable means we don't need so many casts later. Widget widget = (Widget) m_labelWidget; XtVaSetValues(widget, XmNlabelString, label_str(), XmNlabelType, XmSTRING, NULL); }
void wxControl::SetLabel(const wxString& label) { Widget widget = (Widget) GetLabelWidget() ; if (!widget) return; wxXmString label_str(GetLabelText(label)); XtVaSetValues (widget, XmNlabelString, label_str(), XmNlabelType, XmSTRING, NULL); }
CRpcHelper::label_str CRpcHelper::GetLabel( const address_str& addr ) { Json::Value args; args.append( addr ); std::string ret = m_rpc->Send( "getaccount", args ); return label_str( ret ); }
void wxMenuBar::SetMenuLabel(size_t pos, const wxString& label) { wxMenu *menu = GetMenu(pos); if ( !menu ) return; Widget w = (Widget)menu->GetButtonWidget(); if (w) { wxXmString label_str(label); XtVaSetValues(w, XmNlabelString, label_str(), NULL); } m_titles[pos] = label; }
CRpcHelper::full_booklist CRpcHelper::GetFullBookList() { full_booklist result; Json::Value ret = json_from_string( m_rpc->Send( "listaddressgroupings" ) ); std::stack<Json::Value> stk; stk.push( ret ); while( stk.size() ) { const Json::Value rv = stk.top(); stk.pop(); if( rv.isArray() || rv.isObject() ) { if( rv.size() > 0 ) { if( rv[UINT( 0 )].isString() && rv.size() >= 2 ) { assert( rv[1].isDouble() ); addr_ext_info nv; address_str addr = address_str( rv[UINT( 0 )].asString() ); nv.balance = rv[1].asDouble(); if( rv.size() >= 3 ) { nv.label = label_str( rv[2].asString() ); } bool ok = result.insert( std::make_pair( addr, nv ) ).second; assert( ok ); } else { for( Json::Value::const_iterator it = rv.begin(); it != rv.end(); ++it ) { stk.push( *it ); } } } } else { assert( 0 ); } } mini_booklist minis = GetMiniBookList(); for( mini_booklist::const_iterator it = minis.begin(); it != minis.end(); ++it ) { addr_ext_info ar; ar.label = it->second; ar.balance = 0; result.insert( std::make_pair( it->first, ar ) ).second; } return result; }
WXWidget wxMenu::CreateMenu (wxMenuBar * menuBar, WXWidget parent, wxMenu * topMenu, size_t menuIndex, const wxString& title, bool pullDown) { Widget menu = (Widget) 0; Widget buttonWidget = (Widget) 0; Display* dpy = XtDisplay((Widget)parent); Arg args[5]; XtSetArg (args[0], XmNnumColumns, m_numColumns); XtSetArg (args[1], XmNpacking, (m_numColumns > 1) ? XmPACK_COLUMN : XmPACK_TIGHT); if ( !m_font.IsOk() ) { if ( menuBar ) m_font = menuBar->GetFont(); else if ( GetInvokingWindow() ) m_font = GetInvokingWindow()->GetFont(); } XtSetArg (args[2], (String)wxFont::GetFontTag(), m_font.GetFontTypeC(dpy) ); if (!pullDown) { menu = XmCreatePopupMenu ((Widget) parent, wxMOTIF_STR("popup"), args, 3); #if 0 XtAddCallback(menu, XmNunmapCallback, (XtCallbackProc)wxMenuPopdownCallback, (XtPointer)this); #endif } else { char mnem = wxFindMnemonic (title); menu = XmCreatePulldownMenu ((Widget) parent, wxMOTIF_STR("pulldown"), args, 3); wxString title2(wxStripMenuCodes(title)); wxXmString label_str(title2); buttonWidget = XtVaCreateManagedWidget(title2, #if wxUSE_GADGETS xmCascadeButtonGadgetClass, (Widget) parent, #else xmCascadeButtonWidgetClass, (Widget) parent, #endif XmNlabelString, label_str(), XmNsubMenuId, menu, (String)wxFont::GetFontTag(), m_font.GetFontTypeC(dpy), XmNpositionIndex, menuIndex, NULL); if (mnem != 0) XtVaSetValues (buttonWidget, XmNmnemonic, mnem, NULL); } m_menuWidget = (WXWidget) menu; m_topLevelMenu = topMenu; size_t i = 0; for ( wxMenuItemList::compatibility_iterator node = GetMenuItems().GetFirst(); node; node = node->GetNext(), ++i ) { wxMenuItem *item = node->GetData(); item->CreateItem(menu, menuBar, topMenu, i); } ChangeFont(); return buttonWidget; }
WXWidget wxMenu::CreateMenu (wxMenuBar * menuBar, WXWidget parent, wxMenu * topMenu, size_t WXUNUSED(index), const wxString& title, bool pullDown) { Widget menu = (Widget) 0; Widget buttonWidget = (Widget) 0; Arg args[5]; XtSetArg (args[0], XmNnumColumns, m_numColumns); XtSetArg (args[1], XmNpacking, (m_numColumns > 1) ? XmPACK_COLUMN : XmPACK_TIGHT); if (!pullDown) { menu = XmCreatePopupMenu ((Widget) parent, wxMOTIF_STR("popup"), args, 2); #if 0 XtAddCallback(menu, XmNunmapCallback, (XtCallbackProc)wxMenuPopdownCallback, (XtPointer)this); #endif } else { char mnem = wxFindMnemonic (title); menu = XmCreatePulldownMenu ((Widget) parent, wxMOTIF_STR("pulldown"), args, 2); wxString title2(wxStripMenuCodes(title)); wxXmString label_str(title2); buttonWidget = XtVaCreateManagedWidget(title2, #if wxUSE_GADGETS xmCascadeButtonGadgetClass, (Widget) parent, #else xmCascadeButtonWidgetClass, (Widget) parent, #endif XmNlabelString, label_str(), XmNsubMenuId, menu, NULL); if (mnem != 0) XtVaSetValues (buttonWidget, XmNmnemonic, mnem, NULL); } m_menuWidget = (WXWidget) menu; m_topLevelMenu = topMenu; size_t i = 0; for ( wxMenuItemList::compatibility_iterator node = GetMenuItems().GetFirst(); node; node = node->GetNext(), ++i ) { wxMenuItem *item = node->GetData(); item->CreateItem(menu, menuBar, topMenu, i); } SetBackgroundColour(m_backgroundColour); SetForegroundColour(m_foregroundColour); SetFont(m_font); return buttonWidget; }
static void create_dropdowns_for_multival_attr(GList *match_attr_list, GList *contact_attr_list, GList **use_attr_list, gint *row, GtkTable *table, const gchar * (*label_str) (EVCardAttribute*) ) { GtkWidget *label, *hbox, *dropdown; GList *miter, *citer; GHashTable *match_attrs; /* attr in the 'match' contact from address book */ match_attrs = g_hash_table_new_full (camel_strcase_hash, camel_strcase_equal, g_free, NULL); for (miter = match_attr_list; miter; miter = g_list_next (miter)) { EVCardAttribute *attr = miter->data; gchar *value; value = e_vcard_attribute_get_value (attr); if (value && *value) { g_hash_table_insert (match_attrs, value, attr); *use_attr_list = g_list_prepend (*use_attr_list, attr); } else { g_free (value); } } *use_attr_list = g_list_reverse (*use_attr_list); for (citer = contact_attr_list; citer; citer = g_list_next (citer)) { EVCardAttribute *attr = citer->data; gchar *value; value = e_vcard_attribute_get_value (attr); if (value && *value) { if (!g_hash_table_lookup (match_attrs, value)) { dropdown_data *data; /* the attr is not set in both contacts */ *use_attr_list = g_list_append (*use_attr_list, attr); /* remove to avoid collisions with match UI_SLOTs */ e_vcard_attribute_remove_param (attr, EVOLUTION_UI_SLOT_PARAM); (*row)++; label = gtk_label_new (label_str (attr)); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start (GTK_BOX (hbox), (GtkWidget *) label, FALSE, FALSE, 0); gtk_table_attach_defaults (table, (GtkWidget *) hbox, 0, 1, *row, *row + 1); dropdown = gtk_combo_box_text_new (); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (dropdown), value); data = g_new0 (dropdown_data, 1); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (dropdown), ""); gtk_combo_box_set_active (GTK_COMBO_BOX (dropdown), 0); data->email_attr_list_item = g_list_last (*use_attr_list); data->email_attr = attr; g_signal_connect ( dropdown, "changed", G_CALLBACK (attr_dropdown_changed), data); g_object_set_data_full (G_OBJECT (dropdown), "eab-contact-merging::dropdown-data", data, g_free); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start (GTK_BOX (hbox), (GtkWidget *) dropdown, FALSE, FALSE, 0); gtk_table_attach_defaults (table, (GtkWidget *) hbox, 1, 2, *row, *row + 1); gtk_widget_show ((GtkWidget *) dropdown); } } g_free (value); } g_hash_table_destroy (match_attrs); }