Esempio n. 1
0
 def bukkitEditionIndexChange(self):
     self.bukkitVersions.clear()
     if self.bukkitEditions.currentText() == 'Recommended':
         #self.cacheBukkitRecommendedResultInfo = getServer().getRecommendedBukkitInfo()
         for result in self.cacheBukkitRecommendedResultInfo['results']:
             self.bukkitVersions.addItem(result['version'])
     elif self.bukkitEditions.currentText() == 'Beta':
         self.cacheBukkitBetaResultInfo = getServer().getBetaBukkitInfo()
         for result in self.cacheBukkitBetaResultInfo['results']:
             self.bukkitVersions.addItem(result['version'])
     elif self.bukkitEditions.currentText() == 'Development':
         self.cacheBukkitDevResultInfo = getServer().getDevBukkitInfo()
         for result in self.cacheBukkitDevResultInfo['results']:
             self.bukkitVersions.addItem(result['version'])
Esempio n. 2
0
    def initUI(self):
        global targetDirectory
        targetDirectory = ''
        msg = QMessageBox(self)
        msg.setWindowTitle('Please wait...')
        msg.setIcon(QMessageBox.Information)
        msg.setText('Please wait whilst information is requested.')
        msg.show()
        self.cacheBukkitRecommendedResultInfo = getServer().getRecommendedBukkitInfo()
        msg.close()
        self.getBukkit = QtGui.QPushButton('Get Craftbukkit')
        self.bukkitEditions = QtGui.QComboBox(self)
        self.bukkitEditions.addItems(['Recommended', 'Beta', 'Development'])
        self.bukkitVersions = QtGui.QComboBox(self)
        self.bukkitVersionsLabel = QtGui.QLabel('Build: ' + str(self.cacheBukkitRecommendedResultInfo['results'][0]['build_number']))
        for result in self.cacheBukkitRecommendedResultInfo['results']:
            self.bukkitVersions.addItem(result['version'])
        self.setupStartupScriptButton = QtGui.QPushButton('Create Startup Script')
        self.startServer = QtGui.QPushButton('Start Server')
        self.configureServerPropertiesButton = QtGui.QPushButton('Configure')

        self.pluginOfficialSupportComboBox = QtGui.QComboBox(self)
        self.pluginOfficialSupportComboBox.addItems(nativePluginSupport)
        self.pluginOfficialSupportComboBoxLabel = QtGui.QLabel("Natively Supported Plugins:")
        self.pluginCustomPluginUrlLabel = QtGui.QLabel("BukkitDev Plugins:")
        self.pluginCustomPluginUrl = QtGui.QLineEdit("http://dev.bukkit.org/server-mods/Essentials/")
        self.installPluginButton = QtGui.QPushButton("Setup Dev Bukkit Plugin")
        self.installSupportedPluginButton = QtGui.QPushButton("Setup Natively Supported Plugin")

        self.browseInstallDirectoryButton = QtGui.QPushButton("Browse...")
        self.browseInstallDirectoryButtonLabel = QtGui.QLabel("This is required before you install plugins")
        self.browseInstallDirectoryButtonLabel.setStyleSheet('QLabel {color: red}')

        # Status widgets
        self.statusIpAddress = QtGui.QLineEdit('127.0.0.1')
        self.statusIpAddress.setFixedWidth(100)
        self.statusIpAddressLabel = QtGui.QLabel('IP: ')
        self.statusPortNumber = QtGui.QLineEdit('25565')
        self.statusPortNumber.setFixedWidth(40)
        self.statusPortNumber.setMaxLength(5)
        self.statusPortNumberLabel = QtGui.QLabel('Port: ')
        self.statusRefreshButton = QtGui.QPushButton('Refresh')
        self.statusConnectedPlayers = QtGui.QListWidget()
        self.statusConnectedPlayers.setMaximumWidth(125)
        self.statusConnectedPlayersLabel = QtGui.QLabel('Connected Players')
        self.statusInstalledPlugins = QtGui.QListWidget()
        self.statusInstalledPluginsLabel = QtGui.QLabel('Installed Plugins')
        self.statusMinecraftVersion = QtGui.QLabel('Version: ')
        self.statusMaxPlayers = QtGui.QLabel('Max Players: ')
        self.statusTimeoutLabel = QtGui.QLabel('Timeout: ')
        self.statusTimeout = QtGui.QLineEdit(str(3))
        self.statusTimeout.setFixedWidth(40)
        self.statusTimeout.setMaxLength(3)

        bukkitGrid = QtGui.QGroupBox("Bukkit")
        self.bukkitGridLayout = QtGui.QVBoxLayout()
        self.bukkitGridLayout.setSpacing(10)
        self.bukkitGridLayout.addWidget(self.getBukkit,1)
        self.bukkitGridLayout.addWidget(self.bukkitEditions,2)
        self.bukkitGridLayout.addWidget(self.bukkitVersions,3)
        self.bukkitGridLayout.addWidget(self.bukkitVersionsLabel,4)
        self.bukkitGridLayout.addWidget(self.setupStartupScriptButton,5)
        self.bukkitGridLayout.addWidget(self.configureServerPropertiesButton,6)
        self.bukkitGridLayout.addWidget(self.startServer,7)

        pluginGrid = QtGui.QGroupBox("Plugin")
        pluginGridLayout = QtGui.QVBoxLayout()
        pluginGridLayout.setSpacing(10)
        pluginGridLayout.addWidget(self.pluginOfficialSupportComboBoxLabel,1)
        pluginGridLayout.addWidget(self.pluginOfficialSupportComboBox,2)
        pluginGridLayout.addWidget(self.installSupportedPluginButton,3)
        pluginGridLayout.addWidget(self.pluginCustomPluginUrlLabel,4)
        pluginGridLayout.addWidget(self.pluginCustomPluginUrl,5)
        pluginGridLayout.addWidget(self.installPluginButton,6)

        bukkitGrid.setLayout(self.bukkitGridLayout)
        pluginGrid.setLayout(pluginGridLayout)

        self.grid = QtGui.QGridLayout()
        self.grid.addWidget(self.browseInstallDirectoryButton,1,0)
        self.grid.addWidget(self.browseInstallDirectoryButtonLabel,1,1)
        self.grid.addWidget(bukkitGrid,2,0)
        self.grid.addWidget(pluginGrid,2,1)
        self.grid.addWidget(self.statusIpAddressLabel,3,0,QtCore.Qt.AlignLeft)
        self.grid.addWidget(self.statusIpAddress,3,0,QtCore.Qt.AlignRight)
        self.grid.addWidget(self.statusPortNumberLabel,3,1,QtCore.Qt.AlignLeft)
        self.grid.addWidget(self.statusPortNumber,3,1,QtCore.Qt.AlignRight)
        self.grid.addWidget(self.statusTimeoutLabel,5,0,QtCore.Qt.AlignLeft)
        self.grid.addWidget(self.statusTimeout,5,0,QtCore.Qt.AlignRight)
        self.grid.addWidget(self.statusConnectedPlayersLabel,6,0)
        self.grid.addWidget(self.statusConnectedPlayers,7,0)
        self.grid.addWidget(self.statusInstalledPluginsLabel,6,1)
        self.grid.addWidget(self.statusInstalledPlugins,7,1)
        self.grid.addWidget(self.statusMaxPlayers,8,0)
        self.grid.addWidget(self.statusMinecraftVersion,8,1)
        self.grid.addWidget(self.statusRefreshButton,5,1)

        self.setLayout(self.grid)
        self.setWindowTitle('Mineraft')
        self.show()
        self.getBukkit.clicked.connect(self.getBukkitButtonPress)
        self.bukkitEditions.currentIndexChanged.connect(self.bukkitEditionIndexChange)
        self.bukkitVersions.currentIndexChanged.connect(self.bukkitVersionsIndexChange)
        self.installPluginButton.clicked.connect(self.installPluginButtonPress)
        self.installSupportedPluginButton.clicked.connect(self.installSupportedPluginButtonPress)
        self.browseInstallDirectoryButton.clicked.connect(self.browseInstallDirectoryButtonClick)
        self.statusRefreshButton.clicked.connect(self.refreshStatus)
        self.setupStartupScriptButton.clicked.connect(self.setupStartupScriptButtonClick)
        self.startServer.clicked.connect(self.startServerButtonClick)
        self.configureServerPropertiesButton.clicked.connect(self.configureServerPropertiesButtonClicked)