def __init__(self, parent=None): super(MainWindow, self).__init__(_get_maya_main_window()) self.resize(1250, 750) self.setWindowTitle(u'assets') assets_menu = AssetsMenu.LeftTitleWidget() self.splitter_window = Splitter.Splitter() assets_menu.button_list[0].clicked.connect( partial(self.change_dir, 'ma_root_dir')) assets_menu.button_list[1].clicked.connect( partial(self.change_dir, 'tex_root_dir')) assets_menu.button_list[2].clicked.connect( partial(self.change_dir, 'hdr_root_dir')) widget = QtWidgets.QWidget(self) HBox = QtWidgets.QHBoxLayout(widget) HBox.addWidget(assets_menu) HBox.addWidget(self.splitter_window) self.setCentralWidget(widget) help = QtWidgets.QAction(QtGui.QIcon('icons/help.png'), u'no write', self) help.setShortcut('Ctrl+Q') help.setStatusTip('help application') set_dir = QtWidgets.QAction(QtGui.QIcon('icons/help.png'), u'set root dir', self) set_dir.setShortcut('Ctrl+O') set_dir.setStatusTip('help application') set_dir.triggered.connect(self.root_dir_window) self.statusBar() menubar = self.menuBar() sets_menu = menubar.addMenu(u'&设置') help_menu = menubar.addMenu(u'&帮助') help_menu.addAction(help) sets_menu.addAction(set_dir)
def __init__(self): QtWidgets.QFrame.__init__(self) self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.setWindowTitle('Name Tool') self.setMinimumHeight(285) self.setMinimumWidth(320) self.setLayout(QtWidgets.QVBoxLayout()) self.layout().setContentsMargins(5, 5, 5, 5) self.layout().setSpacing(0) self.layout().setAlignment(QtCore.Qt.AlignTop) # Rename Widget rename_widget = QtWidgets.QWidget() # Widget holding upper name stuff rename_widget.setLayout(QtWidgets.QVBoxLayout()) rename_widget.layout().setContentsMargins(0, 0, 0, 0) rename_widget.layout().setSpacing(2) rename_widget.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.layout().addWidget(rename_widget) # Label Splitter rename_splitter = Splitter.Splitter('Rename') # Custom splitter widget rename_widget.layout().addWidget(rename_splitter) # Rename Input rename_text_layout = QtWidgets.QHBoxLayout() rename_text_layout.setContentsMargins(4, 0, 4, 0) rename_text_layout.setSpacing(2) rename_widget.layout().addLayout(rename_text_layout) rename_text_label = QtWidgets.QLabel('Rename: ') self.rename_line_edit = QtWidgets.QLineEdit() self.rename_line_edit.setPlaceholderText( 'Component_Side_objectName_##_CTL') # Grey text rename_text_layout.addWidget(rename_text_label) rename_text_layout.addWidget(self.rename_line_edit) # Regular Expression # () indicates excluding these symbols, [] indicates accepts these # Having a ^ between symbols indicates all symbols between are included reg_ex = QtCore.QRegExp('^(?!@$^_)[0-9a-zA-Z_#]+') text_validator = QtGui.QRegExpValidator(reg_ex, self.rename_line_edit) self.rename_line_edit.setValidator(text_validator) rename_widget.layout().addLayout(Splitter.SplitterLayout()) # AlphaNumeric Options rename_alphanumberic_layout = QtWidgets.QHBoxLayout() rename_alphanumberic_layout.setContentsMargins(4, 0, 4, 0) rename_alphanumberic_layout.setSpacing(2) rename_widget.layout().addLayout(rename_alphanumberic_layout) rename_alphanumberic_label = QtWidgets.QLabel('Name List Method: ') self.rename_alpha_radio = QtWidgets.QRadioButton('Alpha') self.rename_number_radio = QtWidgets.QRadioButton('Numbers') self.rename_number_radio.setChecked(True) self.rename_alpha_radio.setFixedHeight(19) rename_alphanumberic_layout.addWidget(rename_alphanumberic_label) rename_alphanumberic_layout.addSpacerItem( QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) ) rename_alphanumberic_layout.addWidget(self.rename_alpha_radio) rename_alphanumberic_layout.addWidget(self.rename_number_radio) # Hidden Upper/Lower Case buttons rename_options_layout = QtWidgets.QHBoxLayout() rename_options_layout.setContentsMargins(4, 0, 4, 0) rename_options_layout.setSpacing(2) rename_widget.layout().addLayout(rename_options_layout) self.alpha_case_group = QtWidgets.QButtonGroup() self.lower_radio = QtWidgets.QRadioButton('Lowercase') self.upper_radio = QtWidgets.QRadioButton('Uppercase') self.alpha_case_group.addButton(self.lower_radio) self.alpha_case_group.addButton(self.upper_radio) self.lower_radio.setVisible(False) self.upper_radio.setVisible(False) self.lower_radio.setFixedHeight(19) self.upper_radio.setFixedHeight(19) self.upper_radio.setChecked(True) rename_options_layout.addWidget(self.lower_radio) rename_options_layout.addSpacerItem( QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) ) rename_options_layout.addWidget(self.upper_radio) # Starting Number rename_starting_number_layout = QtWidgets.QHBoxLayout() rename_starting_number_layout.setContentsMargins(4, 0, 4, 0) rename_starting_number_layout.setSpacing(2) rename_widget.layout().addLayout(rename_starting_number_layout) self.rename_start_label = QtWidgets.QLabel('Starting Number: ') self.rename_start_number = QtWidgets.QSpinBox() self.rename_start_number.setFixedWidth(50) self.rename_start_number.setMinimum(0) self.rename_start_number.setMaximum(999) self.list_end_condition_label = QtWidgets.QLabel('End with "END":') self.list_end_condition_checkbox = QtWidgets.QCheckBox() rename_starting_number_layout.addWidget(self.rename_start_label) rename_starting_number_layout.addWidget(self.rename_start_number) rename_starting_number_layout.addSpacerItem( QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) ) rename_starting_number_layout.addWidget(self.list_end_condition_label) rename_starting_number_layout.addWidget( self.list_end_condition_checkbox) rename_widget.layout().addLayout(Splitter.SplitterLayout()) # Execute List Rename Button rename_button_layout = QtWidgets.QHBoxLayout() rename_button_layout.setContentsMargins(4, 0, 4, 0) rename_button_layout.setSpacing(0) rename_widget.layout().addLayout(rename_button_layout) self.rename_label = QtWidgets.QLabel('') rename_button = QtWidgets.QPushButton('Rename') rename_button.setFixedHeight(20) rename_button.setFixedWidth(55) rename_button_layout.addWidget(self.rename_label) rename_button_layout.addWidget(rename_button) # Replace Widget replace_widget = QtWidgets.QWidget() # Widget holding lower name stuff replace_widget.setLayout(QtWidgets.QVBoxLayout()) replace_widget.layout().setContentsMargins(0, 0, 0, 0) replace_widget.layout().setSpacing(2) replace_widget.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.layout().addWidget(replace_widget) replace_splitter = Splitter.Splitter('Find & Replace') replace_widget.layout().addWidget(replace_splitter) find_label = QtWidgets.QLabel('Find: ') self.find_line_edit = QtWidgets.QLineEdit() replace_label = QtWidgets.QLabel('Replace: ') self.replace_line_edit = QtWidgets.QLineEdit() find_label.setFixedWidth(55) replace_label.setFixedWidth(55) reg_ex = QtCore.QRegExp('[0-9a-zA-Z_]+') text_validator = QtGui.QRegExpValidator(reg_ex, self.rename_line_edit) self.find_line_edit.setValidator(text_validator) self.replace_line_edit.setValidator(text_validator) find_layout = QtWidgets.QHBoxLayout() find_layout.setContentsMargins(4, 0, 4, 0) find_layout.setSpacing(2) find_layout.addWidget(find_label) find_layout.addWidget(self.find_line_edit) replace_widget.layout().addLayout(find_layout) replace_layout = QtWidgets.QHBoxLayout() replace_layout.setContentsMargins(4, 0, 4, 0) replace_layout.setSpacing(2) replace_layout.addWidget(replace_label) replace_layout.addWidget(self.replace_line_edit) replace_widget.layout().addLayout(replace_layout) replace_widget.layout().addLayout(Splitter.SplitterLayout()) selection_layout = QtWidgets.QHBoxLayout() selection_layout.setContentsMargins(4, 0, 4, 0) selection_layout.setSpacing(2) replace_widget.layout().addLayout(selection_layout) selection_mode_label = QtWidgets.QLabel('Selection Mode: ') self.selected_radio_button = QtWidgets.QRadioButton('Selected') self.selected_radio_button.setFixedHeight(19) self.selected_radio_button.setChecked(True) self.hierarchy_radio_button = QtWidgets.QRadioButton('Hierarchy') self.hierarchy_radio_button.setFixedHeight(19) selection_layout.addWidget(selection_mode_label) spacer_item = QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) selection_layout.addSpacerItem(spacer_item) selection_layout.addWidget(self.selected_radio_button) selection_layout.addWidget(self.hierarchy_radio_button) replace_widget.layout().addLayout(Splitter.SplitterLayout()) replace_button = QtWidgets.QPushButton('Replace') replace_button.setFixedHeight(20) replace_button.setFixedWidth(55) replace_button_layout = QtWidgets.QHBoxLayout() replace_button_layout.setContentsMargins(4, 0, 4, 0) replace_button_layout.setSpacing(0) replace_button_layout.setAlignment(QtCore.Qt.AlignRight) replace_button_layout.addWidget(replace_button) replace_widget.layout().addLayout(replace_button_layout) # Prefix and Suffix additions_widget = QtWidgets.QWidget() additions_widget.setLayout(QtWidgets.QVBoxLayout()) additions_widget.layout().setContentsMargins(0, 0, 0, 0) additions_widget.layout().setSpacing(2) additions_widget.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.layout().addWidget(additions_widget) # Label Splitter additions_splitter = Splitter.Splitter('Prefix & Suffix') additions_widget.layout().addWidget(additions_splitter) prefix_layout = QtWidgets.QHBoxLayout() prefix_layout.setContentsMargins(4, 0, 4, 0) prefix_layout.setSpacing(2) additions_widget.layout().addLayout(prefix_layout) suffix_layout = QtWidgets.QHBoxLayout() suffix_layout.setContentsMargins(4, 0, 4, 0) suffix_layout.setSpacing(2) additions_widget.layout().addLayout(suffix_layout) prefix_label = QtWidgets.QLabel('Prefix:') self.prefix_line_edit = QtWidgets.QLineEdit() self.prefix_add_button = QtWidgets.QPushButton('+') self.prefix_remove_button = QtWidgets.QPushButton('-') self.prefix_replace_button = QtWidgets.QPushButton('><') # Change later prefix_layout.addWidget(prefix_label) prefix_layout.addWidget(self.prefix_line_edit) prefix_layout.addWidget(self.prefix_add_button) prefix_layout.addWidget(self.prefix_remove_button) prefix_layout.addWidget(self.prefix_replace_button) suffix_label = QtWidgets.QLabel('Suffix:') self.suffix_line_edit = QtWidgets.QLineEdit() self.suffix_add_button = QtWidgets.QPushButton('+') self.suffix_remove_button = QtWidgets.QPushButton('-') self.suffix_replace_button = QtWidgets.QPushButton('><') # Change later suffix_layout.addWidget(suffix_label) suffix_layout.addWidget(self.suffix_line_edit) suffix_layout.addWidget(self.suffix_add_button) suffix_layout.addWidget(self.suffix_remove_button) suffix_layout.addWidget(self.suffix_replace_button) prefix_label.setFixedWidth(55) suffix_label.setFixedWidth(55) self.prefix_add_button.setFixedWidth(25) self.prefix_remove_button.setFixedWidth(25) self.prefix_replace_button.setFixedWidth(25) self.suffix_add_button.setFixedWidth(25) self.suffix_remove_button.setFixedWidth(25) self.suffix_replace_button.setFixedWidth(25) additions_widget.layout().addLayout(Splitter.SplitterLayout()) # Name Cleanup cleanup_widget = QtWidgets.QWidget() cleanup_widget.setLayout(QtWidgets.QVBoxLayout()) cleanup_widget.layout().setContentsMargins(0, 0, 0, 0) cleanup_widget.layout().setSpacing(2) cleanup_widget.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.layout().addWidget(cleanup_widget) # Label Splitter cleanup_splitter = Splitter.Splitter('Cleanup') cleanup_widget.layout().addWidget(cleanup_splitter) cleanup_layout = QtWidgets.QHBoxLayout() cleanup_layout.setContentsMargins(4, 0, 4, 0) cleanup_layout.setSpacing(2) cleanup_widget.layout().addLayout(cleanup_layout) self.end_digits_button = QtWidgets.QPushButton('End Digits') # Below buttons need proper functions written...----------- self.shape_name_button = QtWidgets.QPushButton('Shape Names') self.deformer_name_button = QtWidgets.QPushButton('Deformer Names') cleanup_layout.addWidget(self.end_digits_button) cleanup_layout.addWidget(self.shape_name_button) cleanup_layout.addWidget(self.deformer_name_button) # State Change modifiers # Need to set the changed status of the alphanumeric radio buttons to # influence the _toggle_rename_vis() function self.rename_alpha_radio.clicked.connect(self._toggle_rename_vis) self.rename_number_radio.clicked.connect(self._toggle_rename_vis) self.lower_radio.clicked.connect(self._update_example) self.upper_radio.clicked.connect(self._update_example) self.rename_start_number.valueChanged.connect(self._update_example) self.rename_line_edit.textChanged.connect(self._update_example) rename_button.clicked.connect(self.list_rename) replace_button.clicked.connect(self.replace_text) self.prefix_add_button.clicked.connect( partial(self.edit_prefix, True, False, False)) self.prefix_remove_button.clicked.connect( partial(self.edit_prefix, False, False, True)) self.prefix_replace_button.clicked.connect( partial(self.edit_prefix, False, True, False)) self.suffix_add_button.clicked.connect( partial(self.edit_suffix, True, False, False)) self.suffix_remove_button.clicked.connect( partial(self.edit_suffix, False, False, True)) self.suffix_replace_button.clicked.connect( partial(self.edit_suffix, False, True, False)) self.end_digits_button.clicked.connect(clear_end_digits) self._update_example()
#!/usr/bin/env python import Splitter import Tagger import Scorer import Importer import yaml from pprint import pprint if __name__ == "__main__": rss = Importer.RSSImporter( 'https://news.google.com/news/feeds?q=apple&output=rss') input_text = rss.parse() s = Splitter.Splitter() tagger = Tagger.DictionaryTagger([ 'dicts/positive.yml', 'dicts/negative.yml', 'dicts/inc.yml', 'dicts/dec.yml', 'dicts/inv.yml' ]) scorer = Scorer.Scorer() total = 0 for summary in input_text: split = s.split(summary) tagged = tagger.tag(split) score = scorer.score(tagged) print "%s -> %d" % (summary, score) total += score
def __init__(self): QtWidgets.QFrame.__init__(self) self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.setWindowTitle('Name Tool') self.setFixedHeight(285) self.setFixedWidth(320) self.setLayout(QtWidgets.QVBoxLayout()) self.layout().setContentsMargins(5, 5, 5, 5) self.layout().setSpacing(0) self.layout().setAlignment(QtCore.Qt.AlignTop) # Rename Widget rename_widget = QtWidgets.QWidget() # Widget holding upper name stuff rename_widget.setLayout(QtWidgets.QVBoxLayout()) rename_widget.layout().setContentsMargins(0, 0, 0, 0) rename_widget.layout().setSpacing(2) rename_widget.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.layout().addWidget(rename_widget) # Label Splitter rename_splitter = Splitter('Rename') # Custom splitter widget rename_widget.layout().addWidget(rename_splitter) # Rename Input rename_text_layout = QtWidgets.QHBoxLayout() rename_text_layout.setContentsMargins(4, 0, 4, 0) rename_text_layout.setSpacing(2) rename_widget.layout().addLayout(rename_text_layout) rename_text_label = QtWidgets.QLabel('Rename: ') self.rename_line_edit = QtWidgets.QLineEdit() self.rename_line_edit.setPlaceholderText('C_objectName_##_CTRL') # Grey text rename_text_layout.addWidget(rename_text_label) rename_text_layout.addWidget(self.rename_line_edit) # Regular Expression # () indicates excluding these symbols, [] indicates accepts these # Having a ^ between symbols indicates all symbols between are included reg_ex = QtCore.QRegExp('^(?!@$^_)[a-zA-Z_#]+') text_validator = QtGui.QRegExpValidator(reg_ex, self.rename_line_edit) self.rename_line_edit.setValidator(text_validator) rename_widget.layout().addLayout(Splitter.SplitterLayout()) # AlphaNumeric Options rename_alphanumberic_layout = QtWidgets.QHBoxLayout() rename_alphanumberic_layout.setContentsMargins(4, 0, 4, 0) rename_alphanumberic_layout.setSpacing(2) rename_widget.layout().addLayout(rename_alphanumberic_layout) rename_alphanumberic_label = QtWidgets.QLabel('Name List Method: ') self.rename_alpha_radio = QtWidgets.QRadioButton('Alpha') self.rename_number_radio = QtWidgets.QRadioButton('Numbers') self.rename_number_radio.setChecked(True) self.rename_alpha_radio.setFixedHeight(19) rename_alphanumberic_layout.addWidget(rename_alphanumberic_label) rename_alphanumberic_layout.addSpacerItem( QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) ) rename_alphanumberic_layout.addWidget(self.rename_alpha_radio) rename_alphanumberic_layout.addWidget(self.rename_number_radio) # Hidden Upper/Lower Case buttons rename_options_layout = QtWidgets.QHBoxLayout() rename_options_layout.setContentsMargins(4, 0, 4, 0) rename_options_layout.setSpacing(2) rename_widget.layout().addLayout(rename_options_layout) self.alpha_case_group = QtWidgets.QButtonGroup() self.lower_radio = QtWidgets.QRadioButton('Lowercase') self.upper_radio = QtWidgets.QRadioButton('Uppercase') self.alpha_case_group.addButton(self.lower_radio) self.alpha_case_group.addButton(self.upper_radio) self.lower_radio.setVisible(False) self.upper_radio.setVisible(False) self.lower_radio.setFixedHeight(19) self.upper_radio.setFixedHeight(19) self.upper_radio.setChecked(True) rename_options_layout.addWidget(self.lower_radio) rename_options_layout.addSpacerItem( QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) ) rename_options_layout.addWidget(self.upper_radio) # Starting Number rename_starting_number_layout = QtWidgets.QHBoxLayout() rename_starting_number_layout.setContentsMargins(4, 0, 4, 0) rename_starting_number_layout.setSpacing(2) rename_widget.layout().addLayout(rename_starting_number_layout) self.rename_start_label = QtWidgets.QLabel('Starting Number: ') self.rename_start_number = QtWidgets.QSpinBox() self.rename_start_number.setFixedWidth(50) self.rename_start_number.setMinimum(0) self.rename_start_number.setMaximum(999) rename_starting_number_layout.addWidget(self.rename_start_label) rename_starting_number_layout.addWidget(self.rename_start_number) rename_widget.layout().addLayout(Splitter.SplitterLayout()) # Execute List Rename Button rename_button_layout = QtWidgets.QHBoxLayout() rename_button_layout.setContentsMargins(4, 0, 4, 0) rename_button_layout.setSpacing(0) rename_widget.layout().addLayout(rename_button_layout) self.rename_label = QtWidgets.QLabel('') rename_button = QtWidgets.QPushButton('Rename') rename_button.setFixedHeight(20) rename_button.setFixedWidth(55) rename_button_layout.addWidget(self.rename_label) rename_button_layout.addWidget(rename_button) # Replace Widget replace_widget = QtWidgets.QWidget() # Widget holding lower name stuff replace_widget.setLayout(QtWidgets.QVBoxLayout()) replace_widget.layout().setContentsMargins(0, 0, 0, 0) replace_widget.layout().setSpacing(2) replace_widget.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.layout().addWidget(replace_widget) replace_splitter = Splitter.Splitter('Find & Replace') # Custom splitter widget replace_widget.layout().addWidget(replace_splitter) find_label = QtWidgets.QLabel('Find: ') self.find_line_edit = QtWidgets.QLineEdit() replace_label = QtWidgets.QLabel('Replace: ') self.replace_line_edit = QtWidgets.QLineEdit() find_label.setFixedWidth(55) replace_label.setFixedWidth(55) reg_ex = QtCore.QRegExp('[a-zA-Z_]+') text_validator = QtGui.QRegExpValidator(reg_ex, self.rename_line_edit) self.find_line_edit.setValidator(text_validator) self.replace_line_edit.setValidator(text_validator) find_layout = QtWidgets.QHBoxLayout() find_layout.setContentsMargins(4, 0, 4, 0) find_layout.setSpacing(2) find_layout.addWidget(find_label) find_layout.addWidget(self.find_line_edit) replace_widget.layout().addLayout(find_layout) replace_layout = QtWidgets.QHBoxLayout() replace_layout.setContentsMargins(4, 0, 4, 0) replace_layout.setSpacing(2) replace_layout.addWidget(replace_label) replace_layout.addWidget(self.replace_line_edit) replace_widget.layout().addLayout(replace_layout) replace_widget.layout().addLayout(Splitter.SplitterLayout()) selection_layout = QtWidgets.QHBoxLayout() selection_layout.setContentsMargins(4, 0, 4, 0) selection_layout.setSpacing(2) replace_widget.layout().addLayout(selection_layout) selection_mode_label = QtWidgets.QLabel('Selection Mode: ') self.selected_radio_button = QtWidgets.QRadioButton('Selected') self.selected_radio_button.setFixedHeight(19) self.selected_radio_button.setChecked(True) self.hierarchy_radio_button = QtWidgets.QRadioButton('Hierarchy') self.hierarchy_radio_button.setFixedHeight(19) selection_layout.addWidget(selection_mode_label) spacer_item = QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Expanding) selection_layout.addSpacerItem(spacer_item) selection_layout.addWidget(self.selected_radio_button) selection_layout.addWidget(self.hierarchy_radio_button) replace_widget.layout().addLayout(Splitter.SplitterLayout()) replace_button = QtWidgets.QPushButton('Replace') replace_button.setFixedHeight(20) replace_button.setFixedWidth(55) replace_button_layout = QtWidgets.QHBoxLayout() replace_button_layout.setContentsMargins(4, 0, 4, 0) replace_button_layout.setSpacing(0) replace_button_layout.setAlignment(QtCore.Qt.AlignRight) replace_button_layout.addWidget(replace_button) replace_widget.layout().addLayout(replace_button_layout) # State Change modifiers # Need to set the changed status of the alphanumeric radio buttons to # influence the _toggle_rename_vis() function self.rename_alpha_radio.clicked.connect(self._toggle_rename_vis) self.rename_number_radio.clicked.connect(self._toggle_rename_vis) self.lower_radio.clicked.connect(self._update_example) self.upper_radio.clicked.connect(self._update_example) self.rename_start_number.valueChanged.connect(self._update_example) self.rename_line_edit.textChanged.connect(self._update_example) rename_button.clicked.connect(self.list_rename) replace_button.clicked.connect(self.replace_text) self._update_example()