/**
* The name and version of this plugin.
*/
- public final static String version = "VimCoder 0.3.2";
+ public final static String version = "VimCoder 0.3.5";
/**
* The website of the plugin project.
*/
- public final static String website = "http://www.brokenzipper.com/trac/wiki/VimCoder";
+ public final static String website = "http://github.com/chazmcgarvey/vimcoder";
/**
System.getProperty("file.separator") + ".vimcoder");
}
+ /**
+ * Whether or not to use the contest name and point value as problem
+ * directory names.
+ */
+ private static boolean contestDirNames = false;
+
/**
* The panel given to the Arena applet when it is requested.
*/
private final static String ROOTDIR = "com.dogcows.VimCoder.config.rootdir";
+ /**
+ * The key for the problem directory name preference.
+ */
+ private final static String CONTESTDIRNAMES = "com.dogcows.VimCoder.config.contestdirnames";
+
/**
* The preferences object for storing plugin settings.
*/
return rootDir;
}
+ /**
+ * Get whether or not to save problems in a human-readable directory
+ * structure.
+ * @return The directory name setting.
+ */
+ public static boolean isContestDirNames()
+ {
+ return contestDirNames;
+ }
+
/**
* Instantiate the entry point of the editor plugin.
c.anchor = GridBagConstraints.BASELINE_LEADING;
fieldPanel.add(browseButton, c);
+ final JCheckBox contestDirNamesButton = new JCheckBox(
+ "Store problems according to contest name and point value.",
+ contestDirNames
+ );
+ contestDirNamesButton.setForeground(Common.FG_COLOR);
+ contestDirNamesButton.setBackground(Common.WPB_COLOR);
+ contestDirNamesButton.setFont(rootDirLabel.getFont());
+ c.gridx = 1;
+ c.gridy = 1;
+ c.gridwidth = 2;
+ fieldPanel.add(contestDirNamesButton, c);
+
JLabel vimCommandLabel = new JLabel("Vim Command:");
vimCommandLabel.setForeground(Common.FG_COLOR);
c.gridx = 0;
- c.gridy = 1;
+ c.gridy = 2;
+ c.gridwidth = 1;
fieldPanel.add(vimCommandLabel, c);
final JTextField vimCommandField = new JTextField(vimCommand);
vimCommandField.setPreferredSize(new Dimension(0, 24));
c.gridx = 1;
- c.gridy = 1;
+ c.gridy = 2;
c.weightx = 1.0;
c.gridwidth = 2;
fieldPanel.add(vimCommandField, c);
{
prefs.setProperty(VIMCOMMAND, vimCommandField.getText());
prefs.setProperty(ROOTDIR, rootDirField.getText());
+ prefs.setProperty(CONTESTDIRNAMES, String.valueOf(contestDirNamesButton.isSelected()));
JOptionPane.showMessageDialog(null, "Preferences were saved successfully.");
}
});
String dir = prefs.getProperty(ROOTDIR);
if (dir != null) rootDir = new File(dir);
+
+ String cn = prefs.getProperty(CONTESTDIRNAMES);
+ if (cn != null) contestDirNames = Boolean.parseBoolean(cn);
}
}
}
+// vim:noet:ts=8