static void do_limit (OTMultiEditor me) { Melder_free (my form1); Melder_free (my form2); my form1 = GuiText_getString (my form1Text); my form2 = GuiText_getString (my form2Text); Graphics_updateWs (my g); }
static void gui_button_cb_addTarget (ArtwordEditor me, GuiButtonEvent /* event */) { Artword artword = (Artword) my data; char32 *timeText = GuiText_getString (my time); double tim = Melder_atof (timeText); char32 *valueText = GuiText_getString (my value); double value = Melder_atof (valueText); ArtwordData a = & artword -> data [my feature]; int i = 1, oldCount = a -> numberOfTargets; Melder_free (timeText); Melder_free (valueText); Artword_setTarget (artword, my feature, tim, value); /* Optimization instead of "updateList (me)". */ if (tim < 0) tim = 0; if (tim > artword -> totalTime) tim = artword -> totalTime; while (tim != a -> times [i]) { i ++; Melder_assert (i <= a -> numberOfTargets); // can fail if tim is in an extended precision register } const char32 *itemText = Melder_cat (Melder_single (tim), U" ", Melder_single (value)); if (a -> numberOfTargets == oldCount) { GuiList_replaceItem (my list, itemText, i); } else { GuiList_insertItem (my list, itemText, i); } Graphics_updateWs (my graphics.get()); Editor_broadcastDataChanged (me); }
static void gui_button_cb_insert (StringsEditor me, GuiButtonEvent /* event */) { Strings strings = (Strings) my data; /* * Find the first selected item. */ long numberOfSelected, *selected = GuiList_getSelectedPositions (my list, & numberOfSelected); long position = selected ? selected [1] : strings -> numberOfStrings + 1; NUMvector_free (selected, 1); char32 *text = GuiText_getString (my text); /* * Change the data. */ Strings_insert (strings, position, text); /* * Change the list. */ GuiList_insertItem (my list, text, position); GuiList_deselectAllItems (my list); GuiList_selectItem (my list, position); /* * Clean up. */ Melder_free (text); Editor_broadcastDataChanged (me); }
static void menu_cb_run (EDITOR_ARGS) { EDITOR_IAM (ScriptEditor); if (my interpreter -> running) Melder_throw (U"The script is already running (paused). Please close or continue the pause or demo window."); autostring32 text = GuiText_getString (my textWidget); trace (U"Running the following script (1):\n", text.peek()); structMelderFile file = { 0 }; if (my name [0]) { Melder_pathToFile (my name, & file); MelderFile_setDefaultDir (& file); } Melder_includeIncludeFiles (& text); int npar = Interpreter_readParameters (my interpreter, text.peek()); if (npar) { /* * Pop up a dialog box for querying the arguments. */ forget (my argsDialog); my argsDialog = Interpreter_createForm (my interpreter, my d_windowForm, NULL, args_ok, me, false); UiForm_do (my argsDialog, false); } else { autoPraatBackground background; if (my name [0]) MelderFile_setDefaultDir (& file); trace (U"Running the following script (2):\n", text.peek()); Interpreter_run (my interpreter, text.peek()); } }
void StringsEditor::gui_button_cb_insert (I, GuiButtonEvent event) { (void) event; StringsEditor *stringsEditor = (StringsEditor *)void_me; Strings strings = (structStrings*)stringsEditor->_data; /* * Find the first selected item. */ long numberOfSelected, *selected = GuiList_getSelectedPositions (stringsEditor->_list, & numberOfSelected); long position = selected == NULL ? strings -> numberOfStrings + 1 : selected [1]; NUMlvector_free (selected, 1); wchar_t *text = GuiText_getString (stringsEditor->_text); /* * Change the data. */ Strings_insert (strings, position, text); /* * Change the list. */ GuiList_insertItem (stringsEditor->_list, text, position); GuiList_deselectAllItems (stringsEditor->_list); GuiList_selectItem (stringsEditor->_list, position); /* * Clean up. */ Melder_free (text); stringsEditor->broadcastChange (); }
static void gui_button_cb_insert (I, GuiButtonEvent event) { (void) event; iam (StringsEditor); Strings strings = (Strings) my data; /* * Find the first selected item. */ long numberOfSelected, *selected = GuiList_getSelectedPositions (my list, & numberOfSelected); long position = selected == NULL ? strings -> numberOfStrings + 1 : selected [1]; NUMvector_free (selected, 1); wchar_t *text = GuiText_getString (my text); /* * Change the data. */ Strings_insert (strings, position, text); /* * Change the list. */ GuiList_insertItem (my list, text, position); GuiList_deselectAllItems (my list); GuiList_selectItem (my list, position); /* * Clean up. */ Melder_free (text); my broadcastDataChanged (); }
static void saveDocument (TextEditor me, MelderFile file) { autostring32 text = GuiText_getString (my textWidget); MelderFile_writeText (file, text.peek(), Melder_getOutputEncoding ()); my dirty = false; MelderFile_copy (file, & my file); if (my v_fileBased ()) Thing_setName (me, Melder_fileToPath (file)); }
static void menu_cb_expandIncludeFiles (ScriptEditor me, EDITOR_ARGS_DIRECT) { structMelderFile file = { 0 }; autostring32 text = GuiText_getString (my textWidget); if (my name [0]) { Melder_pathToFile (my name, & file); MelderFile_setDefaultDir (& file); } Melder_includeIncludeFiles (& text); GuiText_setString (my textWidget, text.peek()); }
static void gui_button_cb_replace (StringsEditor me, GuiButtonEvent /* event */) { Strings strings = (Strings) my data; long numberOfSelected, *selected = GuiList_getSelectedPositions (my list, & numberOfSelected); char32 *text = GuiText_getString (my text); for (long iselected = 1; iselected <= numberOfSelected; iselected ++) { Strings_replace (strings, selected [iselected], text); GuiList_replaceItem (my list, text, selected [iselected]); } Melder_free (text); Editor_broadcastDataChanged (me); }
static void insert (CategoriesEditor me, int position) { autostring32 text = GuiText_getString (my text); if (str32len (text.peek()) != 0) { autoSimpleString str = SimpleString_create (text.peek()); autoCategoriesEditorInsert command = CategoriesEditorInsert_create (me, str.move(), position); Command_do (command.peek()); if (my history) { CommandHistory_insertItem_move (my history.peek(), command.move()); } updateWidgets (me); } }
void StringsEditor::gui_button_cb_replace (I, GuiButtonEvent event) { (void) event; StringsEditor *stringsEditor = (StringsEditor *)void_me; Strings strings = (structStrings*)stringsEditor->_data; long numberOfSelected, *selected = GuiList_getSelectedPositions (stringsEditor->_list, & numberOfSelected); wchar_t *text = GuiText_getString (stringsEditor->_text); for (long iselected = 1; iselected <= numberOfSelected; iselected ++) { Strings_replace (strings, selected [iselected], text); GuiList_replaceItem (stringsEditor->_list, text, selected [iselected]); } Melder_free (text); stringsEditor->broadcastChange (); }
static void gui_button_cb_replace (I, GuiButtonEvent event) { (void) event; iam (StringsEditor); Strings strings = (Strings) my data; long numberOfSelected, *selected = GuiList_getSelectedPositions (my list, & numberOfSelected); wchar_t *text = GuiText_getString (my text); for (long iselected = 1; iselected <= numberOfSelected; iselected ++) { Strings_replace (strings, selected [iselected], text); GuiList_replaceItem (my list, text, selected [iselected]); } Melder_free (text); my broadcastDataChanged (); }
static void menu_cb_learnOne (EDITOR_ARGS) { EDITOR_IAM (OTMultiEditor); EDITOR_FORM (U"Learn one", U"OTGrammar: Learn one...") OPTIONMENU_ENUM (U"Update rule", kOTGrammar_rerankingStrategy, kOTGrammar_rerankingStrategy_SYMMETRIC_ALL) OPTIONMENU (U"Direction", 3) OPTION (U"forward") OPTION (U"backward") OPTION (U"bidirectionally") REAL (U"Plasticity", U"0.1") REAL (U"Rel. plasticity spreading", U"0.1") EDITOR_OK EDITOR_DO Editor_save (me, U"Learn one"); Melder_free (my form1); Melder_free (my form2); my form1 = GuiText_getString (my form1Text); my form2 = GuiText_getString (my form2Text); OTMulti_learnOne ((OTMulti) my data, my form1, my form2, GET_ENUM (kOTGrammar_rerankingStrategy, U"Update rule"), GET_INTEGER (U"Direction"), GET_REAL (U"Plasticity"), GET_REAL (U"Rel. plasticity spreading")); Graphics_updateWs (my g); Editor_broadcastDataChanged (me); EDITOR_END }
static void gui_button_cb_replace (CategoriesEditor me, GuiButtonEvent /* event */) { long posCount; autoNUMvector<long> posList (GuiList_getSelectedPositions (my list, & posCount), 1); if (posCount > 0) { autostring32 text = GuiText_getString (my text); if (str32len (text.peek()) != 0) { autoSimpleString str = SimpleString_create (text.peek()); autoCategoriesEditorReplace command = CategoriesEditorReplace_create (me, str.move(), posList.peek(), posCount); Command_do (command.peek()); if (my history) { CommandHistory_insertItem_move (my history.peek(), command.move()); } updateWidgets (me); } } }
static void args_ok (UiForm sendingForm, int /* narg */, Stackel /* args */, const char32 * /* sendingString */, Interpreter /* interpreter */, const char32 * /* invokingButtonTitle */, bool /* modified */, void *void_me) { iam (ScriptEditor); autostring32 text = GuiText_getString (my textWidget); structMelderFile file = { 0 }; if (my name [0]) { Melder_pathToFile (my name, & file); MelderFile_setDefaultDir (& file); } Melder_includeIncludeFiles (& text); Interpreter_getArgumentsFromDialog (my interpreter.get(), sendingForm); autoPraatBackground background; if (my name [0]) MelderFile_setDefaultDir (& file); Interpreter_run (my interpreter.get(), text.peek()); }
static void gui_button_cb_append (StringsEditor me, GuiButtonEvent /* event */) { Strings strings = (Strings) my data; char32 *text = GuiText_getString (my text); /* * Change the data. */ Strings_insert (strings, 0, text); /* * Change the list. */ GuiList_insertItem (my list, text, 0); GuiList_deselectAllItems (my list); GuiList_selectItem (my list, strings -> numberOfStrings); /* * Clean up. */ Melder_free (text); Editor_broadcastDataChanged (me); }
void StringsEditor::gui_button_cb_append (I, GuiButtonEvent event) { (void) event; StringsEditor *stringsEditor = (StringsEditor *)void_me; Strings strings = (structStrings*)stringsEditor->_data; wchar_t *text = GuiText_getString (stringsEditor->_text); /* * Change the data. */ Strings_insert (strings, 0, text); /* * Change the list. */ GuiList_insertItem (stringsEditor->_list, text, 0); GuiList_deselectAllItems (stringsEditor->_list); GuiList_selectItem (stringsEditor->_list, strings -> numberOfStrings); /* * Clean up. */ Melder_free (text); stringsEditor->broadcastChange (); }
static void gui_button_cb_append (I, GuiButtonEvent event) { (void) event; iam (StringsEditor); Strings strings = (Strings) my data; wchar_t *text = GuiText_getString (my text); /* * Change the data. */ Strings_insert (strings, 0, text); /* * Change the list. */ GuiList_insertItem (my list, text, 0); GuiList_deselectAllItems (my list); GuiList_selectItem (my list, strings -> numberOfStrings); /* * Clean up. */ Melder_free (text); my broadcastDataChanged (); }
static void args_ok (UiForm sendingForm, int narg_dummy, Stackel args_dummy, const char32 *sendingString_dummy, Interpreter interpreter_dummy, const char32 *invokingButtonTitle, bool modified_dummy, I) { iam (ScriptEditor); (void) narg_dummy; (void) args_dummy; (void) sendingString_dummy; (void) interpreter_dummy; (void) invokingButtonTitle; (void) modified_dummy; autostring32 text = GuiText_getString (my textWidget); structMelderFile file = { 0 }; if (my name [0]) { Melder_pathToFile (my name, & file); MelderFile_setDefaultDir (& file); } Melder_includeIncludeFiles (& text); Interpreter_getArgumentsFromDialog (my interpreter, sendingForm); autoPraatBackground background; if (my name [0]) MelderFile_setDefaultDir (& file); Interpreter_run (my interpreter, text.peek()); }
static void do_search (Manual me) { char32 *query = GuiText_getString (my searchText); search (me, query); Melder_free (query); }