Changeset 778


Ignore:
Timestamp:
01/29/14 11:22:51 (10 years ago)
Author:
jts21
Message:

Move some settings into subpackages to tidy up the main settings page a bit, and make settings parser look for settings in subpages of the current settings page if it finds a setting it doesn't know what to do with

Location:
trunk
Files:
4 added
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/expeditee/actions/Spelling.java

    r655 r778  
    1111import org.expeditee.gui.FrameIO;
    1212import org.expeditee.gui.MessageBay;
    13 import org.expeditee.settings.UserSettings;
     13import org.expeditee.settings.folders.FolderSettings;
    1414
    1515public class Spelling {
     
    2828                }
    2929                if (path == null) {
    30                         for (String possiblePath : UserSettings.FrameDirs.get()) {
     30                        for (String possiblePath : FolderSettings.FrameDirs.get()) {
    3131                                fullPath = FrameIO
    3232                                                .getFrameFullPathName(possiblePath, frameName);
  • trunk/src/org/expeditee/agents/SearchTree.java

    r655 r778  
    1515import org.expeditee.gui.FrameIO;
    1616import org.expeditee.io.Conversion;
    17 import org.expeditee.settings.UserSettings;
     17import org.expeditee.settings.folders.FolderSettings;
    1818
    1919public class SearchTree extends SearchAgent {
     
    7070
    7171                String fullPath = null;
    72                 for (String possiblePath : UserSettings.FrameDirs.get()) {
     72                for (String possiblePath : FolderSettings.FrameDirs.get()) {
    7373                        fullPath = FrameIO.getFrameFullPathName(possiblePath, frameName);
    7474                        if (fullPath != null)
  • trunk/src/org/expeditee/agents/SearchTreeNoResults.java

    r655 r778  
    1414import org.expeditee.gui.FrameIO;
    1515import org.expeditee.io.Conversion;
    16 import org.expeditee.settings.UserSettings;
     16import org.expeditee.settings.folders.FolderSettings;
    1717
    1818public class SearchTreeNoResults extends SearchAgent {
     
    5353               
    5454                String fullPath = null;
    55                 for (String possiblePath : UserSettings.FrameDirs.get()) {
     55                for (String possiblePath : FolderSettings.FrameDirs.get()) {
    5656                        fullPath = FrameIO.getFrameFullPathName(possiblePath, frameName);
    5757                        if (fullPath != null)
  • trunk/src/org/expeditee/gui/Frame.java

    r749 r778  
    2323import org.expeditee.items.Dot;
    2424import org.expeditee.items.Item;
     25import org.expeditee.items.Item.HighlightMode;
    2526import org.expeditee.items.ItemAppearence;
    2627import org.expeditee.items.ItemParentStateChangedEvent;
     
    2829import org.expeditee.items.Line;
    2930import org.expeditee.items.PermissionPair;
     31import org.expeditee.items.Text;
    3032import org.expeditee.items.UserAppliedPermission;
    31 import org.expeditee.items.Text;
    3233import org.expeditee.items.XRayable;
    33 import org.expeditee.items.Item.HighlightMode;
    3434import org.expeditee.items.widgets.InteractiveWidget;
    3535import org.expeditee.items.widgets.WidgetCorner;
    3636import org.expeditee.settings.UserSettings;
     37import org.expeditee.settings.templates.TemplateSettings;
    3738import org.expeditee.simple.UnitTestFailedException;
    3839import org.expeditee.stats.Formatter;
     
    149150        private Collection<Item> _vectorItems = new LinkedHashSet<Item>();
    150151
    151         private Text _dotTemplate = UserSettings.DotTemplate.get().copy();
     152        private Text _dotTemplate = TemplateSettings.DotTemplate.get().copy();
    152153
    153154        /**
     
    165166
    166167        private void resetDot() {
    167                 _dotTemplate.setColor(UserSettings.ColorWheel.get()[1]);
    168                 _dotTemplate.setFillColor(UserSettings.FillColorWheel.get()[0]);
     168                _dotTemplate.setColor(TemplateSettings.ColorWheel.get()[1]);
     169                _dotTemplate.setFillColor(TemplateSettings.FillColorWheel.get()[0]);
    169170        }
    170171
    171172        public void nextDot() {
    172173                _dotTemplate.setFillColor(ColorUtils.getNextColor(_dotTemplate
    173                                 .getFillColor(), UserSettings.FillColorWheel.get(), null));
     174                                .getFillColor(), TemplateSettings.FillColorWheel.get(), null));
    174175                _dotTemplate.setColor(ColorUtils.getNextColor(_dotTemplate.getColor(),
    175                                 UserSettings.ColorWheel.get(), null));
     176                                TemplateSettings.ColorWheel.get(), null));
    176177
    177178                if (_dotTemplate.getColor() == null || _dotTemplate.getColor().equals(Color.white)) {
     
    435436
    436437                if (frameTitle == null) {
    437                         if (UserSettings.TitleTemplate.get() == null) {
     438                        if (TemplateSettings.TitleTemplate.get() == null) {
    438439                                frameTitle = new Text(getNextItemID(), title);
    439440                        } else {
    440                                 frameTitle = UserSettings.TitleTemplate.get().copy();
     441                                frameTitle = TemplateSettings.TitleTemplate.get().copy();
    441442                                frameTitle.setID(this.getNextItemID());
    442443                                frameTitle.setText(title);
     
    499500
    500501        public Text getItemTemplate() {
    501                 return getTemplate(UserSettings.ItemTemplate.get(),
     502                return getTemplate(TemplateSettings.ItemTemplate.get(),
    502503                                ItemUtils.TAG_ITEM_TEMPLATE);
    503504        }
    504505
    505506        public Text getAnnotationTemplate() {
    506                 Text t = getTemplate(UserSettings.AnnotationTemplate.get(),
     507                Text t = getTemplate(TemplateSettings.AnnotationTemplate.get(),
    507508                                ItemUtils.TAG_ANNOTATION_TEMPLATE);
    508509
     
    516517        public Text getStatTemplate() {
    517518                SessionStats.CreatedText();
    518                 Text t = getTemplate(UserSettings.StatTemplate.get(),
     519                Text t = getTemplate(TemplateSettings.StatTemplate.get(),
    519520                                ItemUtils.TAG_STAT_TEMPLATE);
    520521
     
    527528       
    528529        public Item getTooltipTextItem(String tooltipText) {
    529                 return getTextItem(tooltipText, UserSettings.TooltipTemplate.get().copy());
     530                return getTextItem(tooltipText, TemplateSettings.TooltipTemplate.get().copy());
    530531        }
    531532
     
    551552
    552553        public Text getCodeCommentTemplate() {
    553                 Text t = getTemplate(UserSettings.CommentTemplate.get(),
     554                Text t = getTemplate(TemplateSettings.CommentTemplate.get(),
    554555                                ItemUtils.TAG_CODE_COMMENT_TEMPLATE);
    555556
     
    19041905        public void toggleBackgroundColor() {
    19051906                setBackgroundColor(ColorUtils.getNextColor(_background,
    1906                                 UserSettings.BackgroundColorWheel.get(), null));
     1907                                TemplateSettings.BackgroundColorWheel.get(), null));
    19071908        }
    19081909
  • trunk/src/org/expeditee/gui/FrameCreator.java

    r676 r778  
    55import org.expeditee.agents.ExistingFramesetException;
    66import org.expeditee.items.Item;
     7import org.expeditee.items.PermissionPair;
    78import org.expeditee.items.Text;
     9import org.expeditee.items.UserAppliedPermission;
    810
    911public class FrameCreator {
     
    279281                previousButton.setLinkHistory(false);
    280282                previousButton.setLinkMark(false);
     283                // previousButton.setPermission(new PermissionPair(UserAppliedPermission.followLinks));
    281284                current.addItem(previousButton);
    282285
  • trunk/src/org/expeditee/gui/FrameIO.java

    r761 r778  
    3131import org.expeditee.items.ItemUtils;
    3232import org.expeditee.items.PermissionPair;
     33import org.expeditee.items.Text;
    3334import org.expeditee.items.UserAppliedPermission;
    34 import org.expeditee.items.Text;
    3535import org.expeditee.network.FrameShare;
    3636import org.expeditee.settings.UserSettings;
     37import org.expeditee.settings.folders.FolderSettings;
     38import org.expeditee.settings.templates.TemplateSettings;
    3739import org.expeditee.stats.Formatter;
    3840import org.expeditee.stats.Logger;
     
    218220                } else {
    219221
    220                         for (String path : UserSettings.FrameDirs.get()) {
     222                        for (String path : FolderSettings.FrameDirs.get()) {
    221223                                loaded = LoadKnowPath(path, framename);
    222224                                if (loaded != null) {
     
    246248                StringBuffer list = new StringBuffer();
    247249
    248                 for (String path : UserSettings.FrameDirs.get()) {
     250                for (String path : FolderSettings.FrameDirs.get()) {
    249251                        File files = new File(path);
    250252                        if (!files.exists())
     
    308310                }
    309311
    310                 for (String path : UserSettings.FrameDirs.get()) {
     312                for (String path : FolderSettings.FrameDirs.get()) {
    311313                        if (getFrameFullPathName(path, frameName) != null)
    312314                                return true;
     
    319321                String fullPath = null;
    320322                if (path == null) {
    321                         for (String possiblePath : UserSettings.FrameDirs.get()) {
     323                        for (String possiblePath : FolderSettings.FrameDirs.get()) {
    322324                                fullPath = getFrameFullPathName(possiblePath, frameName);
    323325                                if (fullPath != null)
     
    12511253        public static Boolean canAccessFrameset(String framesetName) {
    12521254                framesetName = framesetName.toLowerCase();
    1253                 for (String path : UserSettings.FrameDirs.get()) {
     1255                for (String path : FolderSettings.FrameDirs.get()) {
    12541256                        if ((new File(path + framesetName)).exists())
    12551257                                return true;
     
    13091311                Frame base = null;
    13101312                try {
    1311                         base = LoadFrame(UserSettings.DefaultFrame.get());
     1313                        base = LoadFrame(TemplateSettings.DefaultFrame.get());
    13121314                } catch (Exception e) {
    13131315                }
     
    13881390
    13891391                // Search all the available directories for the directory
    1390                 for (String path : UserSettings.FrameDirs.get()) {
     1392                for (String path : FolderSettings.FrameDirs.get()) {
    13911393                        String source = path + framesetName.toLowerCase() + File.separator;
    13921394                        File framesetDirectory = new File(source);
     
    14281430                // search through all the directories to find the frameset we are
    14291431                // copying
    1430                 for (String path : UserSettings.FrameDirs.get()) {
     1432                for (String path : FolderSettings.FrameDirs.get()) {
    14311433                        String source = path + framesetToCopy.toLowerCase()
    14321434                                        + File.separator;
  • trunk/src/org/expeditee/gui/FrameKeyboardActions.java

    r764 r778  
    44import java.awt.Rectangle;
    55import java.awt.Toolkit;
    6 import java.awt.datatransfer.DataFlavor;
    76import java.awt.datatransfer.StringSelection;
    87import java.awt.event.KeyEvent;
     
    1615import java.util.LinkedList;
    1716import java.util.List;
    18 import java.util.StringTokenizer;
    1917
    2018import org.expeditee.actions.Actions;
     
    2927import org.expeditee.items.ItemUtils;
    3028import org.expeditee.items.Line;
     29import org.expeditee.items.Text;
    3130import org.expeditee.items.UserAppliedPermission;
    32 import org.expeditee.items.StringUtils;
    33 import org.expeditee.items.Text;
    3431import org.expeditee.items.XRayable;
    3532import org.expeditee.items.widgets.InteractiveWidget;
     
    3734import org.expeditee.items.widgets.WidgetEdge;
    3835import org.expeditee.settings.UserSettings;
     36import org.expeditee.settings.templates.TemplateSettings;
    3937import org.expeditee.stats.Formatter;
    4038import org.expeditee.stats.Logger;
     
    17951793                        color = null;
    17961794                else
    1797                         color = ColorUtils.getNextColor(color, UserSettings.FillColorWheel.get(), toSet
     1795                        color = ColorUtils.getNextColor(color, TemplateSettings.FillColorWheel.get(), toSet
    17981796                                        .getGradientColor());
    17991797
     
    18231821                        color = null;
    18241822                else
    1825                         color = ColorUtils.getNextColor(color, UserSettings.ColorWheel.get(), toSet
     1823                        color = ColorUtils.getNextColor(color, TemplateSettings.ColorWheel.get(), toSet
    18261824                                        .getFillColor());
    18271825
     
    19041902                        color = null;
    19051903                else if (setBackgroundColor) {
    1906                         color = ColorUtils.getNextColor(color, UserSettings.FillColorWheel.get(), item
     1904                        color = ColorUtils.getNextColor(color, TemplateSettings.FillColorWheel.get(), item
    19071905                                        .getPaintColor());
    19081906                } else {
    1909                         color = ColorUtils.getNextColor(color, UserSettings.ColorWheel.get(),
     1907                        color = ColorUtils.getNextColor(color, TemplateSettings.ColorWheel.get(),
    19101908                                        currentFrame.getPaintBackgroundColor());
    19111909                }
  • trunk/src/org/expeditee/gui/FrameUtils.java

    r775 r778  
    4747import org.expeditee.settings.Settings;
    4848import org.expeditee.settings.UserSettings;
     49import org.expeditee.settings.templates.TemplateSettings;
    4950import org.expeditee.stats.Logger;
    5051import org.expeditee.stats.SessionStats;
     
    15121513                help.setFontStyle("Bold");
    15131514                help.setFamily("SansSerif");
    1514                 help.setColor(UserSettings.ColorWheel.get()[3]);
     1515                help.setColor(TemplateSettings.ColorWheel.get()[3]);
    15151516
    15161517                xPos += 25;
     
    15671568                templates.setFontStyle("Bold");
    15681569                templates.setFamily("SansSerif");
    1569                 templates.setColor(UserSettings.ColorWheel.get()[3]);
     1570                templates.setColor(TemplateSettings.ColorWheel.get()[3]);
    15701571
    15711572                xPos += 25;
  • trunk/src/org/expeditee/items/ItemUtils.java

    r737 r778  
    2626import org.expeditee.items.widgets.WidgetCorner;
    2727import org.expeditee.items.widgets.WidgetEdge;
     28import org.expeditee.settings.folders.FolderSettings;
    2829
    2930//Static methods that provide functions for the objects\
     
    371372                        File file = null;
    372373
    373                         for (String dir : org.expeditee.settings.UserSettings.ImageDirs.get()) {
     374                        for (String dir : FolderSettings.ImageDirs.get()) {
    374375                                file = new File(dir + path);
    375376                                if (file.exists() && !file.isDirectory())
  • trunk/src/org/expeditee/items/widgets/charts/AbstractChart.java

    r729 r778  
    2424import org.expeditee.gui.FrameMouseActions;
    2525import org.expeditee.gui.FunctionKey;
    26 import org.expeditee.items.Item;
    2726import org.expeditee.items.Text;
    2827import org.expeditee.items.widgets.DataFrameWidget;
    29 import org.expeditee.settings.UserSettings;
     28import org.expeditee.settings.templates.TemplateSettings;
    3029import org.jfree.chart.ChartPanel;
    3130import org.jfree.chart.JFreeChart;
     
    110109                                                        Color newColor = ColorUtils.getNextColor(
    111110                                                                        getSource().getFillColor(),
    112                                                                         UserSettings.BackgroundColorWheel.get(), null);
     111                                                                        TemplateSettings.BackgroundColorWheel.get(), null);
    113112                                                        setSourceFillColor(newColor);
    114113                                                }
     
    118117                                                } else {
    119118                                                        Color newColor = ColorUtils.getNextColor(
    120                                                                         getSource().getColor(), UserSettings.ColorWheel.get(),
     119                                                                        getSource().getColor(), TemplateSettings.ColorWheel.get(),
    121120                                                                        null);
    122121                                                        setSourceColor(newColor);
  • trunk/src/org/expeditee/settings/Settings.java

    r717 r778  
    1313import org.expeditee.gui.FrameIO;
    1414import org.expeditee.gui.FrameUtils;
     15import org.expeditee.gui.MessageBay;
    1516import org.expeditee.items.Item;
    1617import org.expeditee.items.Text;
     
    8485        }
    8586       
     87        /**
     88         * Parses the settings tree, then resets any settings that were not set
     89         */
    8690        public static void parseSettings(Text text) {
    87                 parseSettings(text, "");
     91                List<VariableSetting> set = parseSettings(text, "");
     92                List<VariableSetting> toDefault = new LinkedList<VariableSetting>();
     93                for(PageDescriptor pd : _pages.values()) {
     94                        toDefault.addAll(pd.settingsList);
     95                }
     96                toDefault.removeAll(set);
     97                for(VariableSetting s : toDefault) {
     98                        try {
     99                                // System.out.println("Resetting " + s.getTooltip());
     100                    s.reset();
     101                    // System.out.println("Set " + f.getName() + " to default value " + f.get(null));
     102            } catch (Exception e) {
     103                    e.printStackTrace();
     104            }
     105                }
    88106        }
    89107       
     
    93111         * @param text
    94112         * @param prefix
     113         *
     114         * @return List of VariableSettings that were changed
    95115         */
    96         private static void parseSettings(Text text, String prefix) {
    97                
     116        private static List<VariableSetting> parseSettings(Text text, String prefix) {
     117               
     118                List<VariableSetting> set = new LinkedList<VariableSetting>();
    98119                Frame child = text.getChild();
    99120                if(child == null) {
    100                         return;
     121                        return set;
    101122                }
    102123                String settingsPage = prefix + text.getText().trim().toLowerCase().replaceAll("^@", "");
    103124                PageDescriptor pd = _pages.get(settingsPage);
    104125                if(pd == null) {
    105                         return;
     126                        return set;
    106127                }
    107128                try {
    108                         List<VariableSetting> toDefault = new LinkedList<VariableSetting>(pd.settingsList);
    109129                        // set the fields
    110130                        List<Text> items = child.getBodyTextItems(false);
     
    126146                                AttributeValuePair avp = new AttributeValuePair(t.getText(), false);
    127147                                try {
     148                                        String settingName = avp.getAttributeOrValue().trim().toLowerCase();
    128149                                        // System.out.println(avp.getAttributeOrValue().trim().toLowerCase().replaceAll("^@", ""));
    129                                         Setting s = pd.settings.get(avp.getAttributeOrValue().trim().toLowerCase());//.replaceAll("^@", ""));
     150                                        Setting s = pd.settings.get(settingName);//.replaceAll("^@", ""));
    130151                                        if(s == null) {
    131                                                 continue;
     152                                                if(settingName.startsWith("//") || settingName.startsWith("@")) {
     153                                                        continue;
     154                                                }
     155                                                // System.out.println("Couldn't find setting \"" + settingName + "\"");
     156                                                List<String> validPages = new LinkedList<String>();
     157                                                // if the setting isn't found on the current page, check all child pages
     158                                                for(String k : _pages.keySet()) {
     159                                                        if(k.startsWith(settingsPage) && k.length() > settingsPage.length()) {
     160                                                                // System.out.println(k + " is a child of " + settingsPage);
     161                                                                PageDescriptor cpd = _pages.get(k);
     162                                                                Setting tmp = cpd.settings.get(settingName);
     163                                                                if(tmp != null) {
     164                                                                        // System.out.println("Found setting in subpage: " + k);
     165                                                                        s = tmp;
     166                                                                        validPages.add(k);
     167                                                                }
     168                                                        }
     169                                                }
     170                                                // System.out.println(s);
     171                                                if(s == null) {
     172                                                        continue;
     173                                                }
     174                                                if(validPages.size() > 1) {
     175                                                        StringBuffer warnMessage = new StringBuffer("Found multiple matching settings in the following settings subpages: ");
     176                                                        String lastPage = "";
     177                                                        for(String page : validPages) {
     178                                                                warnMessage.append("\"" + page + "\",");
     179                                                                lastPage = page;
     180                                                        }
     181                                                        warnMessage.deleteCharAt(warnMessage.length() - 1);
     182                                                        warnMessage.append(" - choosing " + lastPage);
     183                                                        MessageBay.warningMessage(warnMessage.toString());
     184                                                }
    132185                                        }
    133                                         if(s.setSetting(t)) {
    134                                                 toDefault.remove(s);
     186                                        if(s.setSetting(t) && s instanceof VariableSetting) {
     187                                                set.add((VariableSetting) s);
    135188                                        }
    136189                                } catch (Exception e) {
     
    138191                                }
    139192                        }
    140                         // set any unset fields to their default
    141                         for(VariableSetting s : toDefault) {
    142                                 try {
    143                                         // System.out.println("Resetting " + s.getTooltip());
    144                             s.reset();
    145                             // System.out.println("Set " + f.getName() + " to default value " + f.get(null));
    146                     } catch (Exception e) {
    147                             e.printStackTrace();
    148                     }
    149                         }
    150193                        // call the onParsed method if one exists
    151194                        if(pd.onParsed != null) {
     
    154197        } catch (Exception e) {
    155198            e.printStackTrace();
    156             return;
     199            return set;
    157200        }
    158201                // if the page was a settings page, check if it has any subpages
    159202                for(Text t : child.getTextItems()) {
    160                         parseSettings(t, settingsPage + ".");
    161                 }
     203                        set.addAll(parseSettings(t, settingsPage + "."));
     204                }
     205                return set;
    162206        }
    163207       
     
    188232                }
    189233               
    190                 frames.setLastY(150);
     234                frames.setLastY(frames.getLastY() + 20);
    191235               
    192236                // add settings of the current page
     
    201245                                String name = str.substring(0, 1).toUpperCase() + str.substring(1);
    202246                                String value = "";
    203                                 if(s instanceof GenericSetting && ((GenericSetting) s).isPrimitive()) {
    204                                         if(((GenericSetting) s).get() != null) {
    205                                                 value = ": " + ((GenericSetting) s).get();
     247                                if(s instanceof GenericSetting && ((GenericSetting<?>) s).isPrimitive()) {
     248                                        if(((GenericSetting<?>) s).get() != null) {
     249                                                value = ": " + ((GenericSetting<?>) s).get();
    206250                                        } else {
    207251                                                value = ": ";
     
    219263                                        y = pw.getY();
    220264                                } else {
    221                                         if(s instanceof GenericSetting && ((GenericSetting) s).getType().equals(Text.class)) {
    222                                         t = ((GenericSetting<Text>) s).get();
     265                                        if(s instanceof GenericSetting && ((GenericSetting<?>) s).getType().equals(Text.class)) {
     266                                        t = (Text) ((GenericSetting<?>)s).get();
    223267                                        if(t == null) {
    224268                                                System.err.println("Failed to get Text setting \"" + str + "\"");
  • trunk/src/org/expeditee/settings/UserSettings.java

    r777 r778  
    11package org.expeditee.settings;
    22
    3 import java.awt.Color;
    4 import java.awt.Font;
    5 import java.awt.GraphicsEnvironment;
    63import java.io.File;
    74import java.io.FileNotFoundException;
    85import java.io.IOException;
    96import java.util.ArrayList;
    10 import java.util.Arrays;
    117import java.util.LinkedList;
    128import java.util.List;
     
    1511import org.expeditee.agents.mail.MailSession;
    1612import org.expeditee.agents.wordprocessing.JSpellChecker;
    17 import org.expeditee.gui.AttributeValuePair;
    18 import org.expeditee.gui.DisplayIO;
    1913import org.expeditee.gui.Frame;
    2014import org.expeditee.gui.FrameIO;
    2115import org.expeditee.gui.FrameUtils;
    22 import org.expeditee.gui.FreeItems;
    2316import org.expeditee.gui.MessageBay;
    24 import org.expeditee.items.Item;
    25 import org.expeditee.items.ItemUtils;
    2617import org.expeditee.items.Text;
    27 import org.expeditee.setting.ArraySetting;
    2818import org.expeditee.setting.BooleanSetting;
    2919import org.expeditee.setting.FloatSetting;
     
    3222import org.expeditee.setting.IntegerSetting;
    3323import org.expeditee.setting.ListSetting;
    34 import org.expeditee.setting.Setting;
    3524import org.expeditee.setting.StringSetting;
    36 import org.expeditee.setting.TextSetting;
     25import org.expeditee.settings.folders.FolderSettings;
    3726
    3827/**
     
    7261                }
    7362        };
    74         public static final StringSetting DefaultFrame = new StringSetting("The default frame", null) {
    75                 @Override
    76                 public boolean setSetting(Text text) {
    77                         _value = FrameUtils.getLink(text, _value);
    78                         return true;
    79                 }
    80         };
    8163        public static final IntegerSetting InitialWidth = new IntegerSetting("Initial width of Expeditee window", 1024);
    8264       
    8365        public static final IntegerSetting InitialHeight = new IntegerSetting("Initial height of Expeditee window", 768);
    8466       
    85         public static final TextSetting ItemTemplate = new TextSetting("Template for normal text items") {
    86                 @Override
    87                 public Text generateText() {
    88                         return new Text("ItemTemplate");
    89                 }
    90         };
    91         public static final TextSetting AnnotationTemplate = new TextSetting("Template for annotation text items") {
    92                 @Override
    93                 public Text generateText() {
    94                         Text t = new Text("AnnotationTemplate");
    95                 t.setColor(Color.gray);
    96                 return t;
    97                 }
    98         };
    99 
    100         public static final TextSetting CommentTemplate = new TextSetting("Template for code comment text items") {
    101                 @Override
    102                 public Text generateText() {
    103                         Text t = new Text("CommentTemplate");
    104                 t.setColor(Color.green.darker());
    105                 return t;
    106                 }
    107         };
    108 
    109         public static final TextSetting StatTemplate = new TextSetting("Template for statistics (e.g. extracted attributes) text items") {
    110                 @Override
    111                 public Text generateText() {
    112                         Text t = new Text("StatsTemplate");
    113                 t.setColor(Color.BLACK);
    114                 t.setBackgroundColor(new Color(0.9F, 0.9F, 0.9F));
    115                 t.setFamily(Text.MONOSPACED_FONT);
    116                 t.setSize(14);
    117                 return t;
    118                 }
    119         };
    120        
    12167        /*
    12268         * General settings (no setter functions)
     
    157103
    158104        public static final StringSetting MenuFrame = new StringSetting("The menu frame", null);
    159 
    160         /*
    161          *  Directories
    162          */
    163         public static final ListSetting<String> FrameDirs = new ListSetting<String>("Directories to look in for frames") {
    164                 @Override
    165                 public boolean setSetting(Text text) {
    166                         _value.addAll(FrameUtils.getDirs(text));
    167                         return true;
    168                 }
    169         };
    170         public static final Setting FramesetDir = new Setting("Adds a directory to look in for frames") {
    171                 @Override
    172                 public boolean setSetting(Text text) {
    173                         if(text.getText().indexOf(':') == -1) {
    174                                 return false;
    175                 }
    176                 AttributeValuePair avp = new AttributeValuePair(text.getText());
    177                 if(avp.getValue().trim().length() != 0) {
    178                         String dir = FrameUtils.getDir(avp.getValue());
    179                         if (dir != null) {
    180                                 UserSettings.FrameDirs.get().add(dir);
    181                                 return true;
    182                         }
    183                 }
    184                 return false;
    185                 }
    186         };
    187 
    188         public static ListSetting<String> ImageDirs = new ListSetting<String>("Directories to look in for images") {
    189                 @Override
    190                 public boolean setSetting(Text text) {
    191                         _value.addAll(FrameUtils.getDirs(text));
    192                         return true;
    193                 }
    194         };
    195         public static final Setting ImageDir = new Setting("Adds a directory to look in for images") {
    196                 @Override
    197                 public boolean setSetting(Text text) {
    198                 if(text.getText().indexOf(':') == -1) {
    199                         return false;
    200                 }
    201                 AttributeValuePair avp = new AttributeValuePair(text.getText());
    202                 if(avp.getValue().trim().length() != 0) {
    203                         String dir = FrameUtils.getDir(avp.getValue());
    204                         if(dir != null) {
    205                                 UserSettings.ImageDirs.get().add(0, dir);
    206                                 return true;
    207                         }
    208                 }
    209                 return false;
    210                 }
    211         };
    212        
    213         public static final Setting LogDir = new Setting("Set the directory to save logs") {
    214                 @Override
    215                 public boolean setSetting(Text text) {
    216                         if(text.getText().indexOf(':') == -1) {
    217                         return false;
    218                 }
    219                 AttributeValuePair avp = new AttributeValuePair(text.getText());
    220                 if(avp.getValue().trim().length() != 0) {
    221                         FrameIO.LOGS_DIR = FrameUtils.getDir(avp.getValue());
    222                 }
    223                 return true;
    224                 }
    225         };
    226 
    227         /*
    228          *  Templates
    229          */
    230         public static final TextSetting TitleTemplate = new TextSetting("Template for Title text item") {
    231                 @Override
    232                 public Text generateText() {
    233                         Text t = new Text("TitleTemplate");
    234                         t.setSize(30);
    235                 t.setFontStyle("Bold");
    236                 t.setFamily("SansSerif");
    237                 t.setColor(Color.BLUE);
    238                 t.setPosition(25, 50);
    239                 return t;
    240                 }
    241         };
    242        
    243         public static final TextSetting DotTemplate = new TextSetting("Template for dot items") {
    244                 @Override
    245                 public Text generateText() {
    246                         return new Text("DotTemplate");
    247                 }
    248         };
    249        
    250         public static final TextSetting TooltipTemplate = new TextSetting("Template for tooltips") {
    251                 @Override
    252                 public Text generateText() {
    253                         Text t = new Text("TooltipTemplate");
    254                 t.setColor(Color.BLACK);
    255                 t.setBackgroundColor(new Color(0.7F, 0.7F, 0.9F));
    256                 // t.setFamily(Text.MONOSPACED_FONT);
    257                 t.setSize(14);
    258                 return t;
    259                 }
    260         };
    261        
    262         /*
    263          * Colorwheels
    264          */
    265         public static final ArraySetting<Color> ColorWheel = new ArraySetting<Color>("The colours of items in the child frame are used to populate the colour wheel",
    266                         new Color[] { Color.BLACK, Color.RED, Color.BLUE, Item.GREEN, Color.MAGENTA, Color.YELLOW.darker(), Color.WHITE }) {
    267                 @Override
    268                 public boolean setSetting(Text text) {
    269                         Frame child = text.getChild();
    270                 if (child == null) {
    271                         return false;
    272                 }
    273                 _value = FrameUtils.getColorWheel(child);
    274                 return true;
    275                 }
    276         };
    277        
    278         public static final ArraySetting<Color> FillColorWheel = new ArraySetting<Color>("The colours of items in the child frame are used to populate the colour wheel",
    279                         new Color[] { new Color(255, 150, 150), new Color(150, 150, 255), new Color(150, 255, 150),
    280                         new Color(255, 150, 255), new Color(255, 255, 100), Color.WHITE, Color.BLACK }) {
    281                 @Override
    282                 public boolean setSetting(Text text) {
    283                         Frame child = text.getChild();
    284                 if (child == null) {
    285                         return false;
    286                 }
    287                 _value = FrameUtils.getColorWheel(child);
    288                 return true;
    289                 }
    290         };
    291        
    292         public static final ArraySetting<Color> BackgroundColorWheel = new ArraySetting<Color>("The colours of items in the child frame are used to populate the colour wheel",
    293                         new Color[] { new Color(235, 235, 235), new Color(225, 225, 255), new Color(195, 255, 255),
    294                         new Color(225, 255, 225), new Color(255, 255, 195), new Color(255, 225, 225),
    295                         new Color(255, 195, 255), Color.WHITE, Color.GRAY, Color.DARK_GRAY, Color.BLACK, null }) {
    296                 @Override
    297                 public boolean setSetting(Text text) {
    298                         Frame child = text.getChild();
    299                 if (child == null) {
    300                         return false;
    301                 }
    302                 _value = FrameUtils.getColorWheel(child);
    303                 return true;
    304                 }
    305         };
    306105       
    307106        /*
     
    380179                }
    381180        };
    382        
    383         public static final FrameSetting CursorFrame = new FrameSetting("Items on this frame will be used as the cursor (clearing the frame or removing the link will default back to a normal cursor)") {
    384                 @Override
    385                 public void run(Frame frame) {
    386                         FreeItems.getCursor().addAll(ItemUtils.CopyItems(frame.getAllItems()));
    387                         for (Item i : FreeItems.getCursor()) {
    388                                 i.setParent(null);
    389                         }
    390                         DisplayIO.setCursor(Item.HIDDEN_CURSOR);
    391                         DisplayIO.setCursor(Item.DEFAULT_CURSOR);
    392                 }
    393         };
    394181
    395182        // add default values
     
    402189                }
    403190         
    404                 UserSettings.FrameDirs.get().add(FrameIO.FRAME_PATH);
    405                 UserSettings.FrameDirs.get().add(FrameIO.PUBLIC_PATH);
    406                 UserSettings.FrameDirs.get().add(FrameIO.PROFILE_PATH);
    407                 UserSettings.FrameDirs.get().add(FrameIO.HELP_PATH);
    408                 UserSettings.FrameDirs.get().add(FrameIO.MESSAGES_PATH);
    409                 UserSettings.FrameDirs.setDefault(UserSettings.FrameDirs.get());
    410                 UserSettings.ImageDirs.get().add(FrameIO.IMAGES_PATH);
    411                 UserSettings.ImageDirs.setDefault(UserSettings.ImageDirs.get());
     191                FolderSettings.FrameDirs.get().add(FrameIO.FRAME_PATH);
     192                FolderSettings.FrameDirs.get().add(FrameIO.PUBLIC_PATH);
     193                FolderSettings.FrameDirs.get().add(FrameIO.PROFILE_PATH);
     194                FolderSettings.FrameDirs.get().add(FrameIO.HELP_PATH);
     195                FolderSettings.FrameDirs.get().add(FrameIO.MESSAGES_PATH);
     196                FolderSettings.FrameDirs.setDefault(FolderSettings.FrameDirs.get());
     197                FolderSettings.ImageDirs.get().add(FrameIO.IMAGES_PATH);
     198                FolderSettings.ImageDirs.setDefault(FolderSettings.ImageDirs.get());
    412199        }
    413200
  • trunk/src/org/expeditee/stats/DocumentStatsFast.java

    r655 r778  
    1212import org.expeditee.gui.MessageBay;
    1313import org.expeditee.io.Conversion;
    14 import org.expeditee.settings.UserSettings;
     14import org.expeditee.settings.folders.FolderSettings;
    1515
    1616public class DocumentStatsFast extends Stats {
     
    5757
    5858                String fullPath = null;
    59                 for (String possiblePath : UserSettings.FrameDirs.get()) {
     59                for (String possiblePath : FolderSettings.FrameDirs.get()) {
    6060                        fullPath = FrameIO.getFrameFullPathName(possiblePath, _name);
    6161                        if (fullPath != null)
Note: See TracChangeset for help on using the changeset viewer.