def __init__(self, main, table): super().__init__(main, main.tr('Sort Results')) self.table = table self.settings = self.main.settings_custom['concordancer'][ 'sort_results'] self.table_sort = wordless_table.Wordless_Table_Results_Sort_Conordancer( self, self.table) self.button_reset_settings = wordless_button.Wordless_Button_Reset_Settings( self) self.button_sort = QPushButton(self.tr('Sort'), self) self.button_close = QPushButton(self.tr('Close'), self) self.table_sort.setFixedWidth(280) self.button_reset_settings.setFixedWidth(130) self.button_sort.setFixedWidth(80) self.button_close.setFixedWidth(80) self.table_sort.itemChanged.connect(self.sort_table_changed) self.button_sort.clicked.connect( lambda: self.table_sort.sort_results()) self.button_close.clicked.connect(self.reject) layout_table_sort = wordless_layout.Wordless_Layout() layout_table_sort.addWidget(self.table_sort, 0, 0, 4, 1) layout_table_sort.addWidget(self.table_sort.button_add, 0, 1) layout_table_sort.addWidget(self.table_sort.button_insert, 1, 1) layout_table_sort.addWidget(self.table_sort.button_remove, 2, 1) layout_table_sort.setRowStretch(3, 1) self.setLayout(wordless_layout.Wordless_Layout()) self.layout().addLayout(layout_table_sort, 0, 0, 1, 4) self.layout().addWidget(wordless_layout.Wordless_Separator(self), 1, 0, 1, 4) self.layout().addWidget(self.button_reset_settings, 2, 0) self.layout().addWidget(self.button_sort, 2, 2) self.layout().addWidget(self.button_close, 2, 3) self.layout().setColumnStretch(1, 1) self.set_fixed_size()
def __init__(self, main, tab): super().__init__(main, main.tr('Context Settings')) self.tab = tab self.settings = self.main.settings_custom[self.tab]['context_settings'] # Inclusion self.inclusion_group_box = QGroupBox(self.tr('Inclusion'), self) self.inclusion_group_box.setCheckable(True) (self.inclusion_label_search_term, self.inclusion_checkbox_multi_search_mode, self.inclusion_stacked_widget_search_term, self.inclusion_line_edit_search_term, self.inclusion_list_search_terms, self.inclusion_label_separator, self.inclusion_checkbox_ignore_case, self.inclusion_checkbox_match_inflected_forms, self.inclusion_checkbox_match_whole_words, self.inclusion_checkbox_use_regex, self.inclusion_stacked_widget_ignore_tags, self.inclusion_checkbox_ignore_tags, self.inclusion_checkbox_ignore_tags_tags, self.inclusion_stacked_widget_ignore_tags_type, self.inclusion_combo_box_ignore_tags, self.inclusion_combo_box_ignore_tags_tags, self.inclusion_label_ignore_tags, self.inclusion_checkbox_match_tags ) = wordless_widgets.wordless_widgets_search_settings(self, tab=tab) self.inclusion_label_context_window = QLabel( self.tr('Context Window:'), self) (self.inclusion_checkbox_context_window_sync, self.inclusion_label_context_window_left, self.inclusion_spin_box_context_window_left, self.inclusion_label_context_window_right, self.inclusion_spin_box_context_window_right ) = wordless_widgets.wordless_widgets_window(self) self.inclusion_group_box.toggled.connect(self.inclusion_changed) self.inclusion_checkbox_multi_search_mode.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_multi_search_mode.stateChanged.connect( self.multi_search_mode_changed) self.inclusion_line_edit_search_term.textChanged.connect( self.inclusion_changed) self.inclusion_list_search_terms.itemChanged.connect( self.inclusion_changed) self.inclusion_checkbox_ignore_case.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_match_inflected_forms.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_match_whole_words.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_use_regex.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_ignore_tags.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_ignore_tags_tags.stateChanged.connect( self.inclusion_changed) self.inclusion_combo_box_ignore_tags.currentTextChanged.connect( self.inclusion_changed) self.inclusion_combo_box_ignore_tags_tags.currentTextChanged.connect( self.inclusion_changed) self.inclusion_checkbox_match_tags.stateChanged.connect( self.inclusion_changed) self.inclusion_checkbox_context_window_sync.stateChanged.connect( self.inclusion_changed) self.inclusion_spin_box_context_window_left.valueChanged.connect( self.inclusion_changed) self.inclusion_spin_box_context_window_right.valueChanged.connect( self.inclusion_changed) inclusion_layout_multi_search_mode = wordless_layout.Wordless_Layout() inclusion_layout_multi_search_mode.addWidget( self.inclusion_label_search_term, 0, 0) inclusion_layout_multi_search_mode.addWidget( self.inclusion_checkbox_multi_search_mode, 0, 1, Qt.AlignRight) inclusion_layout_ignore_tags = wordless_layout.Wordless_Layout() inclusion_layout_ignore_tags.addWidget( self.inclusion_stacked_widget_ignore_tags, 0, 0) inclusion_layout_ignore_tags.addWidget( self.inclusion_stacked_widget_ignore_tags_type, 0, 1) inclusion_layout_ignore_tags.addWidget( self.inclusion_label_ignore_tags, 0, 2) inclusion_layout_ignore_tags.setColumnStretch(3, 1) self.inclusion_group_box.setLayout(wordless_layout.Wordless_Layout()) self.inclusion_group_box.layout().addLayout( inclusion_layout_multi_search_mode, 0, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_stacked_widget_search_term, 1, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_label_separator, 2, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_checkbox_ignore_case, 3, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_checkbox_match_inflected_forms, 4, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_checkbox_match_whole_words, 5, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_checkbox_use_regex, 6, 0, 1, 4) self.inclusion_group_box.layout().addLayout( inclusion_layout_ignore_tags, 7, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_checkbox_match_tags, 8, 0, 1, 4) self.inclusion_group_box.layout().addWidget( wordless_layout.Wordless_Separator(self), 9, 0, 1, 4) self.inclusion_group_box.layout().addWidget( self.inclusion_label_context_window, 10, 0, 1, 3) self.inclusion_group_box.layout().addWidget( self.inclusion_checkbox_context_window_sync, 10, 3, Qt.AlignRight) self.inclusion_group_box.layout().addWidget( self.inclusion_label_context_window_left, 11, 0) self.inclusion_group_box.layout().addWidget( self.inclusion_spin_box_context_window_left, 11, 1) self.inclusion_group_box.layout().addWidget( self.inclusion_label_context_window_right, 11, 2) self.inclusion_group_box.layout().addWidget( self.inclusion_spin_box_context_window_right, 11, 3) self.inclusion_group_box.layout().setColumnStretch(1, 1) self.inclusion_group_box.layout().setColumnStretch(3, 1) # Exclusion self.exclusion_group_box = QGroupBox(self.tr('Exclusion'), self) self.exclusion_group_box.setCheckable(True) (self.exclusion_label_search_term, self.exclusion_checkbox_multi_search_mode, self.exclusion_stacked_widget_search_term, self.exclusion_line_edit_search_term, self.exclusion_list_search_terms, self.exclusion_label_separator, self.exclusion_checkbox_ignore_case, self.exclusion_checkbox_match_inflected_forms, self.exclusion_checkbox_match_whole_words, self.exclusion_checkbox_use_regex, self.exclusion_stacked_widget_ignore_tags, self.exclusion_checkbox_ignore_tags, self.exclusion_checkbox_ignore_tags_tags, self.exclusion_stacked_widget_ignore_tags_type, self.exclusion_combo_box_ignore_tags, self.exclusion_combo_box_ignore_tags_tags, self.exclusion_label_ignore_tags, self.exclusion_checkbox_match_tags ) = wordless_widgets.wordless_widgets_search_settings(self, tab=tab) self.exclusion_label_context_window = QLabel( self.tr('Context Window:'), self) (self.exclusion_checkbox_context_window_sync, self.exclusion_label_context_window_left, self.exclusion_spin_box_context_window_left, self.exclusion_label_context_window_right, self.exclusion_spin_box_context_window_right ) = wordless_widgets.wordless_widgets_window(self) self.exclusion_group_box.toggled.connect(self.exclusion_changed) self.exclusion_checkbox_multi_search_mode.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_multi_search_mode.stateChanged.connect( self.multi_search_mode_changed) self.exclusion_line_edit_search_term.textChanged.connect( self.exclusion_changed) self.exclusion_list_search_terms.itemChanged.connect( self.exclusion_changed) self.exclusion_checkbox_ignore_case.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_match_inflected_forms.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_match_whole_words.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_use_regex.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_ignore_tags.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_ignore_tags_tags.stateChanged.connect( self.exclusion_changed) self.exclusion_combo_box_ignore_tags.currentTextChanged.connect( self.exclusion_changed) self.exclusion_combo_box_ignore_tags_tags.currentTextChanged.connect( self.exclusion_changed) self.exclusion_checkbox_match_tags.stateChanged.connect( self.exclusion_changed) self.exclusion_checkbox_context_window_sync.stateChanged.connect( self.exclusion_changed) self.exclusion_spin_box_context_window_left.valueChanged.connect( self.exclusion_changed) self.exclusion_spin_box_context_window_right.valueChanged.connect( self.exclusion_changed) exclusion_layout_multi_search_mode = wordless_layout.Wordless_Layout() exclusion_layout_multi_search_mode.addWidget( self.exclusion_label_search_term, 0, 0) exclusion_layout_multi_search_mode.addWidget( self.exclusion_checkbox_multi_search_mode, 0, 1, Qt.AlignRight) exclusion_layout_ignore_tags = wordless_layout.Wordless_Layout() exclusion_layout_ignore_tags.addWidget( self.exclusion_stacked_widget_ignore_tags, 0, 0) exclusion_layout_ignore_tags.addWidget( self.exclusion_stacked_widget_ignore_tags_type, 0, 1) exclusion_layout_ignore_tags.addWidget( self.exclusion_label_ignore_tags, 0, 2) exclusion_layout_ignore_tags.setColumnStretch(3, 1) self.exclusion_group_box.setLayout(wordless_layout.Wordless_Layout()) self.exclusion_group_box.layout().addLayout( exclusion_layout_multi_search_mode, 0, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_stacked_widget_search_term, 1, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_label_separator, 2, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_checkbox_ignore_case, 3, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_checkbox_match_inflected_forms, 4, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_checkbox_match_whole_words, 5, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_checkbox_use_regex, 6, 0, 1, 4) self.exclusion_group_box.layout().addLayout( exclusion_layout_ignore_tags, 7, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_checkbox_match_tags, 8, 0, 1, 4) self.exclusion_group_box.layout().addWidget( wordless_layout.Wordless_Separator(self), 9, 0, 1, 4) self.exclusion_group_box.layout().addWidget( self.exclusion_label_context_window, 10, 0, 1, 3) self.exclusion_group_box.layout().addWidget( self.exclusion_checkbox_context_window_sync, 10, 3, Qt.AlignRight) self.exclusion_group_box.layout().addWidget( self.exclusion_label_context_window_left, 11, 0) self.exclusion_group_box.layout().addWidget( self.exclusion_spin_box_context_window_left, 11, 1) self.exclusion_group_box.layout().addWidget( self.exclusion_label_context_window_right, 11, 2) self.exclusion_group_box.layout().addWidget( self.exclusion_spin_box_context_window_right, 11, 3) self.exclusion_group_box.layout().setColumnStretch(1, 1) self.exclusion_group_box.layout().setColumnStretch(3, 1) self.button_reset_settings = wordless_button.Wordless_Button_Reset_Settings( self) self.button_ok = QPushButton(self.tr('OK'), self) self.button_ok.clicked.connect(self.accept) self.button_reset_settings.setFixedWidth(130) self.setLayout(wordless_layout.Wordless_Layout()) self.layout().addWidget(self.inclusion_group_box, 0, 0, Qt.AlignTop) self.layout().addWidget(self.exclusion_group_box, 0, 1, Qt.AlignTop) self.layout().addWidget(self.button_reset_settings, 1, 0, Qt.AlignLeft) self.layout().addWidget(self.button_ok, 1, 1, Qt.AlignRight) self.layout().setColumnStretch(0, 1) self.layout().setColumnStretch(1, 1) self.load_settings()
def __init__(self, main, tab, table): super().__init__(main, main.tr('Search in Results')) self.tab = tab self.table = table self.settings = self.main.settings_custom[self.tab]['search_results'] self.items_found = [] (self.label_search_term, self.checkbox_multi_search_mode, self.stacked_widget_search_term, self.line_edit_search_term, self.list_search_terms, self.label_separator, self.checkbox_ignore_case, self.checkbox_match_inflected_forms, self.checkbox_match_whole_words, self.checkbox_use_regex, self.stacked_widget_ignore_tags, self.checkbox_ignore_tags, self.checkbox_ignore_tags_tags, self.stacked_widget_ignore_tags_type, self.combo_box_ignore_tags, self.combo_box_ignore_tags_tags, self.label_ignore_tags, self.checkbox_match_tags ) = wordless_widgets.wordless_widgets_search_settings(self, self.tab) self.button_find_next = QPushButton(self.tr('Find Next'), self) self.button_find_prev = QPushButton(self.tr('Find Previous'), self) self.button_find_all = QPushButton(self.tr('Find All'), self) self.button_reset_settings = wordless_button.Wordless_Button_Reset_Settings( self) self.button_clear_hightlights = QPushButton( self.tr('Clear Highlights'), self) self.button_close = QPushButton(self.tr('Close'), self) self.button_reset_settings.setFixedWidth(130) self.button_close.setFixedWidth(80) self.checkbox_multi_search_mode.stateChanged.connect( self.search_settings_changed) self.line_edit_search_term.textChanged.connect( self.search_settings_changed) self.line_edit_search_term.returnPressed.connect( self.button_find_next.click) self.list_search_terms.itemChanged.connect( self.search_settings_changed) self.checkbox_ignore_case.stateChanged.connect( self.search_settings_changed) self.checkbox_match_inflected_forms.stateChanged.connect( self.search_settings_changed) self.checkbox_match_whole_words.stateChanged.connect( self.search_settings_changed) self.checkbox_use_regex.stateChanged.connect( self.search_settings_changed) self.checkbox_ignore_tags.stateChanged.connect( self.search_settings_changed) self.checkbox_ignore_tags_tags.stateChanged.connect( self.search_settings_changed) self.combo_box_ignore_tags.currentTextChanged.connect( self.search_settings_changed) self.combo_box_ignore_tags_tags.currentTextChanged.connect( self.search_settings_changed) self.checkbox_match_tags.stateChanged.connect( self.search_settings_changed) self.button_find_next.clicked.connect(lambda: self.find_next()) self.button_find_prev.clicked.connect(lambda: self.find_prev()) self.button_find_all.clicked.connect(lambda: self.find_all()) self.button_clear_hightlights.clicked.connect(self.clear_highlights) self.button_close.clicked.connect(self.reject) layout_ignore_tags = wordless_layout.Wordless_Layout() layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags, 0, 0) layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags_type, 0, 1) layout_ignore_tags.addWidget(self.label_ignore_tags, 0, 2) layout_ignore_tags.setColumnStretch(3, 1) layout_buttons_right = wordless_layout.Wordless_Layout() layout_buttons_right.addWidget(self.button_find_next, 0, 0) layout_buttons_right.addWidget(self.button_find_prev, 1, 0) layout_buttons_right.addWidget(self.button_find_all, 2, 0) layout_buttons_right.addWidget(self.button_clear_hightlights, 3, 0) layout_buttons_right.setRowStretch(4, 1) layout_buttons_bottom = wordless_layout.Wordless_Layout() layout_buttons_bottom.addWidget(self.button_reset_settings, 0, 0) layout_buttons_bottom.addWidget(self.button_close, 0, 1, Qt.AlignRight) self.setLayout(wordless_layout.Wordless_Layout()) self.layout().addWidget(self.label_search_term, 0, 0) self.layout().addWidget(self.checkbox_multi_search_mode, 0, 1, Qt.AlignRight) self.layout().addWidget(self.stacked_widget_search_term, 1, 0, 1, 2) self.layout().addWidget(self.label_separator, 2, 0, 1, 2) self.layout().addWidget(self.checkbox_ignore_case, 3, 0, 1, 2) self.layout().addWidget(self.checkbox_match_inflected_forms, 4, 0, 1, 2) self.layout().addWidget(self.checkbox_match_whole_words, 5, 0, 1, 2) self.layout().addWidget(self.checkbox_use_regex, 6, 0, 1, 2) self.layout().addLayout(layout_ignore_tags, 7, 0, 1, 2) self.layout().addWidget(self.checkbox_match_tags, 8, 0, 1, 2) self.layout().addWidget( wordless_layout.Wordless_Separator(self, orientation='Vertical'), 0, 2, 9, 1) self.layout().addLayout(layout_buttons_right, 0, 3, 9, 1) self.layout().addWidget(wordless_layout.Wordless_Separator(self), 9, 0, 1, 4) self.layout().addLayout(layout_buttons_bottom, 10, 0, 1, 4) self.main.wordless_work_area.currentChanged.connect(self.reject) self.load_settings()
def __init__(self, main): super().__init__(main) # Table self.table_wordlist = Wordless_Table_Wordlist(self) layout_results = wordless_layout.Wordless_Layout() layout_results.addWidget(self.table_wordlist.label_number_results, 0, 0) layout_results.addWidget(self.table_wordlist.button_results_filter, 0, 2) layout_results.addWidget(self.table_wordlist.button_results_search, 0, 3) layout_results.setColumnStretch(1, 1) self.wrapper_table.layout().addLayout(layout_results, 0, 0, 1, 5) self.wrapper_table.layout().addWidget(self.table_wordlist, 1, 0, 1, 5) self.wrapper_table.layout().addWidget( self.table_wordlist.button_generate_table, 2, 0) self.wrapper_table.layout().addWidget( self.table_wordlist.button_generate_fig, 2, 1) self.wrapper_table.layout().addWidget( self.table_wordlist.button_export_selected, 2, 2) self.wrapper_table.layout().addWidget( self.table_wordlist.button_export_all, 2, 3) self.wrapper_table.layout().addWidget(self.table_wordlist.button_clear, 2, 4) # Token Settings self.group_box_token_settings = QGroupBox(self.tr('Token Settings'), self) (self.checkbox_words, self.checkbox_lowercase, self.checkbox_uppercase, self.checkbox_title_case, self.checkbox_nums, self.checkbox_puncs, self.checkbox_treat_as_lowercase, self.checkbox_lemmatize_tokens, self.checkbox_filter_stop_words, self.stacked_widget_ignore_tags, self.checkbox_ignore_tags, self.checkbox_ignore_tags_tags, self.stacked_widget_ignore_tags_tags, self.combo_box_ignore_tags, self.combo_box_ignore_tags_tags, self.label_ignore_tags, self.checkbox_use_tags ) = wordless_widgets.wordless_widgets_token_settings(self) self.checkbox_words.stateChanged.connect(self.token_settings_changed) self.checkbox_lowercase.stateChanged.connect( self.token_settings_changed) self.checkbox_uppercase.stateChanged.connect( self.token_settings_changed) self.checkbox_title_case.stateChanged.connect( self.token_settings_changed) self.checkbox_nums.stateChanged.connect(self.token_settings_changed) self.checkbox_puncs.stateChanged.connect(self.token_settings_changed) self.checkbox_treat_as_lowercase.stateChanged.connect( self.token_settings_changed) self.checkbox_lemmatize_tokens.stateChanged.connect( self.token_settings_changed) self.checkbox_filter_stop_words.stateChanged.connect( self.token_settings_changed) self.checkbox_ignore_tags.stateChanged.connect( self.token_settings_changed) self.checkbox_ignore_tags_tags.stateChanged.connect( self.token_settings_changed) self.combo_box_ignore_tags.currentTextChanged.connect( self.token_settings_changed) self.combo_box_ignore_tags_tags.currentTextChanged.connect( self.token_settings_changed) self.checkbox_use_tags.stateChanged.connect( self.token_settings_changed) layout_ignore_tags = wordless_layout.Wordless_Layout() layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags, 0, 0) layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags_tags, 0, 1) layout_ignore_tags.addWidget(self.label_ignore_tags, 0, 2) layout_ignore_tags.setColumnStretch(3, 1) self.group_box_token_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_token_settings.layout().addWidget( self.checkbox_words, 0, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_lowercase, 0, 1) self.group_box_token_settings.layout().addWidget( self.checkbox_uppercase, 1, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_title_case, 1, 1) self.group_box_token_settings.layout().addWidget( self.checkbox_nums, 2, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_puncs, 2, 1) self.group_box_token_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 3, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_treat_as_lowercase, 4, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_lemmatize_tokens, 5, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_filter_stop_words, 6, 0, 1, 2) self.group_box_token_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 7, 0, 1, 2) self.group_box_token_settings.layout().addLayout( layout_ignore_tags, 8, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_use_tags, 9, 0, 1, 2) # Generation Settings self.group_box_generation_settings = QGroupBox( self.tr('Generation Settings')) (self.label_measure_dispersion, self.combo_box_measure_dispersion ) = wordless_widgets.wordless_widgets_measure_dispersion(self) (self.label_measure_adjusted_freq, self.combo_box_measure_adjusted_freq ) = wordless_widgets.wordless_widgets_measure_adjusted_freq(self) (self.label_settings_measures, self.button_settings_measures ) = wordless_widgets.wordless_widgets_settings_measures( self, tab=self.tr('Dispersion')) self.combo_box_measure_dispersion.currentTextChanged.connect( self.generation_settings_changed) self.combo_box_measure_adjusted_freq.currentTextChanged.connect( self.generation_settings_changed) layout_settings_measures = wordless_layout.Wordless_Layout() layout_settings_measures.addWidget(self.label_settings_measures, 0, 0) layout_settings_measures.addWidget(self.button_settings_measures, 0, 1) layout_settings_measures.setColumnStretch(1, 1) self.group_box_generation_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_generation_settings.layout().addWidget( self.label_measure_dispersion, 0, 0) self.group_box_generation_settings.layout().addWidget( self.combo_box_measure_dispersion, 1, 0) self.group_box_generation_settings.layout().addWidget( self.label_measure_adjusted_freq, 2, 0) self.group_box_generation_settings.layout().addWidget( self.combo_box_measure_adjusted_freq, 3, 0) self.group_box_generation_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 4, 0) self.group_box_generation_settings.layout().addLayout( layout_settings_measures, 5, 0) # Table Settings self.group_box_table_settings = QGroupBox(self.tr('Table Settings')) (self.checkbox_show_pct, self.checkbox_show_cumulative, self.checkbox_show_breakdown ) = wordless_widgets.wordless_widgets_table_settings( self, table=self.table_wordlist) self.checkbox_show_pct.stateChanged.connect( self.table_settings_changed) self.checkbox_show_cumulative.stateChanged.connect( self.table_settings_changed) self.checkbox_show_breakdown.stateChanged.connect( self.table_settings_changed) self.group_box_table_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_table_settings.layout().addWidget( self.checkbox_show_pct, 0, 0) self.group_box_table_settings.layout().addWidget( self.checkbox_show_cumulative, 1, 0) self.group_box_table_settings.layout().addWidget( self.checkbox_show_breakdown, 2, 0) # Figure Settings self.group_box_fig_settings = QGroupBox(self.tr('Figure Settings'), self) (self.label_graph_type, self.combo_box_graph_type, self.label_use_file, self.combo_box_use_file, self.label_use_data, self.combo_box_use_data, self.checkbox_use_pct, self.checkbox_use_cumulative ) = wordless_widgets.wordless_widgets_fig_settings(self) self.label_rank = QLabel(self.tr('Rank:'), self) (self.label_rank_min, self.spin_box_rank_min, self.checkbox_rank_min_no_limit, self.label_rank_max, self.spin_box_rank_max, self.checkbox_rank_max_no_limit ) = wordless_widgets.wordless_widgets_filter(self, filter_min=1, filter_max=100000) self.combo_box_graph_type.currentTextChanged.connect( self.fig_settings_changed) self.combo_box_use_file.currentTextChanged.connect( self.fig_settings_changed) self.combo_box_use_data.currentTextChanged.connect( self.fig_settings_changed) self.checkbox_use_pct.stateChanged.connect(self.fig_settings_changed) self.checkbox_use_cumulative.stateChanged.connect( self.fig_settings_changed) self.spin_box_rank_min.valueChanged.connect(self.fig_settings_changed) self.checkbox_rank_min_no_limit.stateChanged.connect( self.fig_settings_changed) self.spin_box_rank_max.valueChanged.connect(self.fig_settings_changed) self.checkbox_rank_max_no_limit.stateChanged.connect( self.fig_settings_changed) layout_fig_settings_combo_boxes = wordless_layout.Wordless_Layout() layout_fig_settings_combo_boxes.addWidget(self.label_graph_type, 0, 0) layout_fig_settings_combo_boxes.addWidget(self.combo_box_graph_type, 0, 1) layout_fig_settings_combo_boxes.addWidget(self.label_use_file, 1, 0) layout_fig_settings_combo_boxes.addWidget(self.combo_box_use_file, 1, 1) layout_fig_settings_combo_boxes.addWidget(self.label_use_data, 2, 0) layout_fig_settings_combo_boxes.addWidget(self.combo_box_use_data, 2, 1) layout_fig_settings_combo_boxes.setColumnStretch(1, 1) self.group_box_fig_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_fig_settings.layout().addLayout( layout_fig_settings_combo_boxes, 0, 0, 1, 3) self.group_box_fig_settings.layout().addWidget(self.checkbox_use_pct, 1, 0, 1, 3) self.group_box_fig_settings.layout().addWidget( self.checkbox_use_cumulative, 2, 0, 1, 3) self.group_box_fig_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 3, 0, 1, 3) self.group_box_fig_settings.layout().addWidget(self.label_rank, 4, 0, 1, 3) self.group_box_fig_settings.layout().addWidget(self.label_rank_min, 5, 0) self.group_box_fig_settings.layout().addWidget(self.spin_box_rank_min, 5, 1) self.group_box_fig_settings.layout().addWidget( self.checkbox_rank_min_no_limit, 5, 2) self.group_box_fig_settings.layout().addWidget(self.label_rank_max, 6, 0) self.group_box_fig_settings.layout().addWidget(self.spin_box_rank_max, 6, 1) self.group_box_fig_settings.layout().addWidget( self.checkbox_rank_max_no_limit, 6, 2) self.group_box_fig_settings.layout().setColumnStretch(1, 1) self.wrapper_settings.layout().addWidget(self.group_box_token_settings, 0, 0) self.wrapper_settings.layout().addWidget( self.group_box_generation_settings, 1, 0) self.wrapper_settings.layout().addWidget(self.group_box_table_settings, 2, 0) self.wrapper_settings.layout().addWidget(self.group_box_fig_settings, 3, 0) self.wrapper_settings.layout().setRowStretch(4, 1) self.load_settings()
def __init__(self, main): super().__init__(main) # Table self.table_keywords = Wordless_Table_Keywords(self) layout_results = wordless_layout.Wordless_Layout() layout_results.addWidget(self.table_keywords.label_number_results, 0, 0) layout_results.addWidget(self.table_keywords.button_filter_results, 0, 2) layout_results.addWidget(self.table_keywords.button_search_results, 0, 3) layout_results.setColumnStretch(1, 1) self.wrapper_table.layout().addLayout(layout_results, 0, 0, 1, 5) self.wrapper_table.layout().addWidget(self.table_keywords, 1, 0, 1, 5) self.wrapper_table.layout().addWidget( self.table_keywords.button_generate_table, 2, 0) self.wrapper_table.layout().addWidget( self.table_keywords.button_generate_fig, 2, 1) self.wrapper_table.layout().addWidget( self.table_keywords.button_export_selected, 2, 2) self.wrapper_table.layout().addWidget( self.table_keywords.button_export_all, 2, 3) self.wrapper_table.layout().addWidget(self.table_keywords.button_clear, 2, 4) # Token Settings self.group_box_token_settings = QGroupBox(self.tr('Token Settings'), self) (self.checkbox_words, self.checkbox_lowercase, self.checkbox_uppercase, self.checkbox_title_case, self.checkbox_nums, self.checkbox_puncs, self.checkbox_treat_as_lowercase, self.checkbox_lemmatize_tokens, self.checkbox_filter_stop_words, self.stacked_widget_ignore_tags, self.checkbox_ignore_tags, self.checkbox_ignore_tags_tags, self.stacked_widget_ignore_tags_type, self.combo_box_ignore_tags, self.combo_box_ignore_tags_tags, self.label_ignore_tags, self.checkbox_use_tags ) = wordless_widgets.wordless_widgets_token_settings(self) self.checkbox_words.stateChanged.connect(self.token_settings_changed) self.checkbox_lowercase.stateChanged.connect( self.token_settings_changed) self.checkbox_uppercase.stateChanged.connect( self.token_settings_changed) self.checkbox_title_case.stateChanged.connect( self.token_settings_changed) self.checkbox_nums.stateChanged.connect(self.token_settings_changed) self.checkbox_puncs.stateChanged.connect(self.token_settings_changed) self.checkbox_treat_as_lowercase.stateChanged.connect( self.token_settings_changed) self.checkbox_lemmatize_tokens.stateChanged.connect( self.token_settings_changed) self.checkbox_filter_stop_words.stateChanged.connect( self.token_settings_changed) self.checkbox_ignore_tags.stateChanged.connect( self.token_settings_changed) self.checkbox_ignore_tags_tags.stateChanged.connect( self.token_settings_changed) self.combo_box_ignore_tags.currentTextChanged.connect( self.token_settings_changed) self.combo_box_ignore_tags_tags.currentTextChanged.connect( self.token_settings_changed) self.checkbox_use_tags.stateChanged.connect( self.token_settings_changed) layout_ignore_tags = wordless_layout.Wordless_Layout() layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags, 0, 0) layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags_type, 0, 1) layout_ignore_tags.addWidget(self.label_ignore_tags, 0, 2) layout_ignore_tags.setColumnStretch(3, 1) self.group_box_token_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_token_settings.layout().addWidget( self.checkbox_words, 0, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_lowercase, 0, 1) self.group_box_token_settings.layout().addWidget( self.checkbox_uppercase, 1, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_title_case, 1, 1) self.group_box_token_settings.layout().addWidget( self.checkbox_nums, 2, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_puncs, 2, 1) self.group_box_token_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 3, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_treat_as_lowercase, 4, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_lemmatize_tokens, 5, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_filter_stop_words, 6, 0, 1, 2) self.group_box_token_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 7, 0, 1, 2) self.group_box_token_settings.layout().addLayout( layout_ignore_tags, 8, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_use_tags, 9, 0, 1, 2) # Generation Settings self.group_box_generation_settings = QGroupBox( self.tr('Generation Settings')) self.label_ref_file = QLabel(self.tr('Reference File:'), self) self.combo_box_ref_file = wordless_box.Wordless_Combo_Box_Ref_File( self) (self.label_test_significance, self.combo_box_test_significance ) = wordless_widgets.wordless_widgets_test_significance(self) (self.label_measure_effect_size, self.combo_box_measure_effect_size ) = wordless_widgets.wordless_widgets_measure_effect_size(self) (self.label_settings_measures, self.button_settings_measures ) = wordless_widgets.wordless_widgets_settings_measures( self, tab=self.tr('Statistical Significance')) self.combo_box_test_significance.addItems( list(self.main.settings_global['tests_significance'] ['keywords'].keys())) self.combo_box_measure_effect_size.addItems( list(self.main.settings_global['measures_effect_size'] ['keywords'].keys())) self.combo_box_ref_file.currentTextChanged.connect( self.generation_settings_changed) self.combo_box_test_significance.currentTextChanged.connect( self.generation_settings_changed) self.combo_box_measure_effect_size.currentTextChanged.connect( self.generation_settings_changed) layout_settings_measures = wordless_layout.Wordless_Layout() layout_settings_measures.addWidget(self.label_settings_measures, 0, 0) layout_settings_measures.addWidget(self.button_settings_measures, 0, 1) layout_settings_measures.setColumnStretch(1, 1) self.group_box_generation_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_generation_settings.layout().addWidget( self.label_ref_file, 0, 0) self.group_box_generation_settings.layout().addWidget( self.combo_box_ref_file, 1, 0) self.group_box_generation_settings.layout().addWidget( self.label_test_significance, 3, 0) self.group_box_generation_settings.layout().addWidget( self.combo_box_test_significance, 4, 0) self.group_box_generation_settings.layout().addWidget( self.label_measure_effect_size, 5, 0) self.group_box_generation_settings.layout().addWidget( self.combo_box_measure_effect_size, 6, 0) self.group_box_generation_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 7, 0) self.group_box_generation_settings.layout().addLayout( layout_settings_measures, 8, 0) # Table Settings self.group_box_table_settings = QGroupBox(self.tr('Table Settings')) (self.checkbox_show_pct, self.checkbox_show_cumulative, self.checkbox_show_breakdown ) = wordless_widgets.wordless_widgets_table_settings( self, table=self.table_keywords) self.checkbox_show_pct.stateChanged.connect( self.table_settings_changed) self.checkbox_show_cumulative.stateChanged.connect( self.table_settings_changed) self.checkbox_show_breakdown.stateChanged.connect( self.table_settings_changed) self.group_box_table_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_table_settings.layout().addWidget( self.checkbox_show_pct, 0, 0) self.group_box_table_settings.layout().addWidget( self.checkbox_show_cumulative, 1, 0) self.group_box_table_settings.layout().addWidget( self.checkbox_show_breakdown, 2, 0) # Figure Settings self.group_box_fig_settings = QGroupBox(self.tr('Figure Settings'), self) (self.label_graph_type, self.combo_box_graph_type, self.label_use_file, self.combo_box_use_file, self.label_use_data, self.combo_box_use_data, self.checkbox_use_pct, self.checkbox_use_cumulative ) = wordless_widgets.wordless_widgets_fig_settings(self) self.label_rank = QLabel(self.tr('Rank:'), self) (self.label_rank_min, self.spin_box_rank_min, self.checkbox_rank_min_no_limit, self.label_rank_max, self.spin_box_rank_max, self.checkbox_rank_max_no_limit ) = wordless_widgets.wordless_widgets_filter(self, filter_min=1, filter_max=100000) self.combo_box_graph_type.currentTextChanged.connect( self.fig_settings_changed) self.combo_box_use_file.currentTextChanged.connect( self.fig_settings_changed) self.combo_box_use_data.currentTextChanged.connect( self.fig_settings_changed) self.checkbox_use_pct.stateChanged.connect(self.fig_settings_changed) self.checkbox_use_cumulative.stateChanged.connect( self.fig_settings_changed) self.spin_box_rank_min.valueChanged.connect(self.fig_settings_changed) self.checkbox_rank_min_no_limit.stateChanged.connect( self.fig_settings_changed) self.spin_box_rank_max.valueChanged.connect(self.fig_settings_changed) self.checkbox_rank_max_no_limit.stateChanged.connect( self.fig_settings_changed) layout_fig_settings_combo_boxes = wordless_layout.Wordless_Layout() layout_fig_settings_combo_boxes.addWidget(self.label_graph_type, 0, 0) layout_fig_settings_combo_boxes.addWidget(self.combo_box_graph_type, 0, 1) layout_fig_settings_combo_boxes.addWidget(self.label_use_file, 1, 0) layout_fig_settings_combo_boxes.addWidget(self.combo_box_use_file, 1, 1) layout_fig_settings_combo_boxes.addWidget(self.label_use_data, 2, 0) layout_fig_settings_combo_boxes.addWidget(self.combo_box_use_data, 2, 1) layout_fig_settings_combo_boxes.setColumnStretch(1, 1) self.group_box_fig_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_fig_settings.layout().addLayout( layout_fig_settings_combo_boxes, 0, 0, 1, 3) self.group_box_fig_settings.layout().addWidget(self.checkbox_use_pct, 1, 0, 1, 3) self.group_box_fig_settings.layout().addWidget( self.checkbox_use_cumulative, 2, 0, 1, 3) self.group_box_fig_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 3, 0, 1, 3) self.group_box_fig_settings.layout().addWidget(self.label_rank, 4, 0, 1, 3) self.group_box_fig_settings.layout().addWidget(self.label_rank_min, 5, 0) self.group_box_fig_settings.layout().addWidget(self.spin_box_rank_min, 5, 1) self.group_box_fig_settings.layout().addWidget( self.checkbox_rank_min_no_limit, 5, 2) self.group_box_fig_settings.layout().addWidget(self.label_rank_max, 6, 0) self.group_box_fig_settings.layout().addWidget(self.spin_box_rank_max, 6, 1) self.group_box_fig_settings.layout().addWidget( self.checkbox_rank_max_no_limit, 6, 2) self.group_box_fig_settings.layout().setColumnStretch(1, 1) self.wrapper_settings.layout().addWidget(self.group_box_token_settings, 0, 0) self.wrapper_settings.layout().addWidget( self.group_box_generation_settings, 1, 0) self.wrapper_settings.layout().addWidget(self.group_box_table_settings, 2, 0) self.wrapper_settings.layout().addWidget(self.group_box_fig_settings, 3, 0) self.wrapper_settings.layout().setRowStretch(4, 1) self.load_settings()
def __init__(self, main): super().__init__(main) # Table self.table_overview = Wordless_Table_Overview(self) self.wrapper_table.layout().addWidget(self.table_overview, 0, 0, 1, 4) self.wrapper_table.layout().addWidget( self.table_overview.button_generate_table, 1, 0) self.wrapper_table.layout().addWidget( self.table_overview.button_export_selected, 1, 1) self.wrapper_table.layout().addWidget( self.table_overview.button_export_all, 1, 2) self.wrapper_table.layout().addWidget(self.table_overview.button_clear, 1, 3) # Token Settings self.group_box_token_settings = QGroupBox(self.tr('Token Settings'), self) (self.checkbox_words, self.checkbox_lowercase, self.checkbox_uppercase, self.checkbox_title_case, self.checkbox_nums, self.checkbox_puncs, self.checkbox_treat_as_lowercase, self.checkbox_lemmatize_tokens, self.checkbox_filter_stop_words, self.stacked_widget_ignore_tags, self.checkbox_ignore_tags, self.checkbox_ignore_tags_tags, self.stacked_widget_ignore_tags_type, self.combo_box_ignore_tags, self.combo_box_ignore_tags_tags, self.label_ignore_tags, self.checkbox_use_tags ) = wordless_widgets.wordless_widgets_token_settings(self) self.checkbox_words.stateChanged.connect(self.token_settings_changed) self.checkbox_lowercase.stateChanged.connect( self.token_settings_changed) self.checkbox_uppercase.stateChanged.connect( self.token_settings_changed) self.checkbox_title_case.stateChanged.connect( self.token_settings_changed) self.checkbox_nums.stateChanged.connect(self.token_settings_changed) self.checkbox_puncs.stateChanged.connect(self.token_settings_changed) self.checkbox_treat_as_lowercase.stateChanged.connect( self.token_settings_changed) self.checkbox_lemmatize_tokens.stateChanged.connect( self.token_settings_changed) self.checkbox_filter_stop_words.stateChanged.connect( self.token_settings_changed) self.checkbox_ignore_tags.stateChanged.connect( self.token_settings_changed) self.checkbox_ignore_tags_tags.stateChanged.connect( self.token_settings_changed) self.combo_box_ignore_tags.currentTextChanged.connect( self.token_settings_changed) self.combo_box_ignore_tags_tags.currentTextChanged.connect( self.token_settings_changed) self.checkbox_use_tags.stateChanged.connect( self.token_settings_changed) layout_ignore_tags = wordless_layout.Wordless_Layout() layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags, 0, 0) layout_ignore_tags.addWidget(self.stacked_widget_ignore_tags_type, 0, 1) layout_ignore_tags.addWidget(self.label_ignore_tags, 0, 2) layout_ignore_tags.setColumnStretch(3, 1) self.group_box_token_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_token_settings.layout().addWidget( self.checkbox_words, 0, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_lowercase, 0, 1) self.group_box_token_settings.layout().addWidget( self.checkbox_uppercase, 1, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_title_case, 1, 1) self.group_box_token_settings.layout().addWidget( self.checkbox_nums, 2, 0) self.group_box_token_settings.layout().addWidget( self.checkbox_puncs, 2, 1) self.group_box_token_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 3, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_treat_as_lowercase, 4, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_lemmatize_tokens, 5, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_filter_stop_words, 6, 0, 1, 2) self.group_box_token_settings.layout().addWidget( wordless_layout.Wordless_Separator(self), 7, 0, 1, 2) self.group_box_token_settings.layout().addLayout( layout_ignore_tags, 8, 0, 1, 2) self.group_box_token_settings.layout().addWidget( self.checkbox_use_tags, 9, 0, 1, 2) # Generation Settings self.group_box_generation_settings = QGroupBox( self.tr('Generation Settings'), self) self.label_base_sttr = QLabel( self.tr('Base of standardized type-token ratio:'), self) self.spin_box_base_sttr = wordless_box.Wordless_Spin_Box(self) self.spin_box_base_sttr.setRange(100, 10000) self.spin_box_base_sttr.valueChanged.connect( self.generation_settings_changed) self.group_box_generation_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_generation_settings.layout().addWidget( self.label_base_sttr, 0, 0) self.group_box_generation_settings.layout().addWidget( self.spin_box_base_sttr, 1, 0) # Table Settings self.group_box_table_settings = QGroupBox(self.tr('Table Settings'), self) (self.checkbox_show_pct, self.checkbox_show_cumulative, self.checkbox_show_breakdown ) = wordless_widgets.wordless_widgets_table_settings( self, table=self.table_overview) self.checkbox_show_pct.stateChanged.connect( self.table_settings_changed) self.checkbox_show_cumulative.stateChanged.connect( self.table_settings_changed) self.checkbox_show_breakdown.stateChanged.connect( self.table_settings_changed) self.group_box_table_settings.setLayout( wordless_layout.Wordless_Layout()) self.group_box_table_settings.layout().addWidget( self.checkbox_show_pct, 0, 0) self.group_box_table_settings.layout().addWidget( self.checkbox_show_cumulative, 1, 0) self.group_box_table_settings.layout().addWidget( self.checkbox_show_breakdown, 2, 0) self.wrapper_settings.layout().addWidget(self.group_box_token_settings, 0, 0) self.wrapper_settings.layout().addWidget( self.group_box_generation_settings, 1, 0) self.wrapper_settings.layout().addWidget(self.group_box_table_settings, 2, 0) self.wrapper_settings.layout().setRowStretch(3, 1) self.load_settings()