Changeset 24
- Timestamp:
- 05/13/08 14:03:43 (16 years ago)
- Location:
- trunk/src/org/expeditee
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/expeditee/actions/Misc.java
r21 r24 18 18 import org.expeditee.gui.FrameMouseActions; 19 19 import org.expeditee.items.Item; 20 import org.expeditee.items.Picture;21 20 import org.expeditee.items.Text; 22 21 import org.expeditee.stats.SessionStats; -
trunk/src/org/expeditee/actions/Simple.java
r22 r24 1645 1645 } 1646 1646 // Display the frames 1647 String adjustedFramesetName = FrameUtils1648 .GetFramesetNameAdjusted(framesetName);1649 1647 for (int i = firstFrameNo; i <= lastFrameNo; i++) { 1650 Frame frame = FrameIO.LoadFrame( adjustedFramesetName + i);1648 Frame frame = FrameIO.LoadFrame(framesetName + i); 1651 1649 if (frame != null) { 1652 1650 double thisFramesPause = pause; -
trunk/src/org/expeditee/agents/CopyTree.java
r23 r24 46 46 // copy the original .0 frame 47 47 Frame zero = FrameIO 48 .LoadFrame(init.getFramesetName Adjusted() + "0");48 .LoadFrame(init.getFramesetName() + "0"); 49 49 processFrame(zero); 50 50 } catch (ExistingFramesetException efe) { … … 133 133 134 134 message("Tree successfully copied to " + _nameTo); 135 FrameUtils.DisplayFrame(FrameUtils.GetFramesetNameAdjusted(_nameTo) 136 + _firstNumber); 135 FrameUtils.DisplayFrame(_nameTo + _firstNumber); 137 136 } 138 137 -
trunk/src/org/expeditee/gui/Frame.java
r19 r24 437 437 } 438 438 439 /**440 * Adjusts frameset names so that a period is appended if they end in a441 * digit.442 *443 * @param name444 * the unadjusted frame set name445 * @return the adjusted frame set name446 */447 public String getFramesetNameAdjusted() {448 return _frameset449 + (Character.isDigit(_frameset.charAt(_frameset.length() - 1)) ? "."450 : "");451 }452 453 439 public void setFrameName(String framename) { 454 440 int num = Conversion.getFrameNumber(framename); … … 479 465 _frameName.setParent(this); 480 466 _frameName.setMaxSize(FrameGraphics.getMaxFrameSize()); 481 _frameName.setText(getFramesetName Adjusted() + _number);467 _frameName.setText(getFramesetName() + _number); 482 468 _frameName.setPosition(FrameGraphics.getMaxFrameSize().width 483 469 - _frameName.getBoundsWidth() - Item.MARGIN_RIGHT … … 752 738 753 739 public String getFrameName() { 754 return getFramesetName Adjusted() + _number;740 return getFramesetName() + _number; 755 741 } 756 742 -
trunk/src/org/expeditee/gui/FrameCreator.java
r21 r24 2 2 3 3 import java.awt.Color; 4 import java.util.List;5 4 6 5 import org.expeditee.items.Item; -
trunk/src/org/expeditee/gui/FrameIO.java
r23 r24 35 35 public class FrameIO { 36 36 37 private static final char FRAME_NAME_LAST_CHAR = 'A'; 38 37 39 public static void changeParentFolder(String newFolder) { 38 40 PARENT_FOLDER = newFolder; … … 135 137 if (isPositiveInteger(frameName)) { 136 138 assert (false); 137 frameName = DisplayIO.getCurrentFrame().getFramesetName Adjusted()139 frameName = DisplayIO.getCurrentFrame().getFramesetName() 138 140 + frameName; 139 141 } … … 294 296 295 297 // the current name and number 296 String name = current.getFramesetName Adjusted();298 String name = current.getFramesetName(); 297 299 int num = current.getFrameNumber() - 1; 298 300 … … 323 325 int num = current.getFrameNumber() + 1; 324 326 int max = num + 1; 325 String name = current.getFramesetName Adjusted();327 String name = current.getFramesetName(); 326 328 327 329 // read the maximum from the INF file … … 373 375 } 374 376 375 String adjustedName = FrameUtils.GetFramesetNameAdjusted(framesetName);376 377 377 // loop backwards until a frame that exists is found 378 378 for (int num = max; num > 0; num--) { 379 Frame f = LoadFrame( adjustedName + num);379 Frame f = LoadFrame(framesetName + num); 380 380 if (f != null) 381 381 return f; … … 387 387 return null; 388 388 } 389 389 390 390 public static Frame LoadZero(String framesetName, String path) { 391 String adjustedName = FrameUtils.GetFramesetNameAdjusted(framesetName); 392 return LoadFrame(adjustedName + 0); 391 return LoadFrame(framesetName + 0); 393 392 } 394 393 … … 397 396 return LoadZero(current.getFramesetName(), current.path); 398 397 } 399 398 400 399 public static Frame LoadLast() { 401 400 Frame current = DisplayIO.getCurrentFrame(); … … 480 479 // disable caching of 0 frames 481 480 SuspendCache(); 482 483 String adjustFramesetName = FrameUtils 484 .GetFramesetNameAdjusted(frameset); 481 485 482 Frame template = null; 486 483 if (templateFrame == null) 487 484 // load in frame.0 488 template = LoadFrame( adjustFramesetName+ "0");485 template = LoadFrame(frameset + "0"); 489 486 else 490 487 template = LoadFrame(templateFrame); … … 510 507 // update INF file 511 508 try { 512 WriteINF(template.path, frameset, adjustFramesetName+ next);509 WriteINF(template.path, frameset, frameset + next); 513 510 } catch (IOException ioe) { 514 511 ioe.printStackTrace(); … … 584 581 * Tests if the given String is a 'proper' framename, that is, the String 585 582 * must begin with a character, end with a number with 0 or more letters and 586 * numbers in between. If there is a dot in the framename all the chars 587 * after it must be digits. 583 * numbers in between. 588 584 * 589 585 * @param frameName … … 596 592 return false; 597 593 594 int lastCharIndex = frameName.length() - 1; 598 595 // String must begin with a letter and end with a digit 599 if (!(Character.isLetter(frameName.charAt(0)) || Character 600 .isDigit(frameName.charAt(0))) 601 || !Character.isDigit(frameName.charAt(frameName.length() - 1))) 596 if (!Character.isLetter(frameName.charAt(0)) 597 || !Character.isDigit(frameName.charAt(lastCharIndex))) 602 598 return false; 603 599 604 int dotIndex = frameName.lastIndexOf('.');605 600 // All the characters between first and last must be letters 606 // or digits or period 607 for (int i = 1; i < frameName.length(); i++) { 608 if (dotIndex > 0 && i > dotIndex) { 609 if (!Character.isDigit(frameName.charAt(i))) 610 return false; 611 } else if (i != dotIndex) { 612 if (!Character.isLetterOrDigit(frameName.charAt(i))) 613 return false; 614 } 615 } 616 601 // or digits 602 for (int i = 1; i < lastCharIndex; i++) { 603 if (!Character.isLetterOrDigit(frameName.charAt(i))) 604 return false; 605 } 617 606 return true; 618 607 } … … 711 700 if (toSave.getFramesetName().toLowerCase().equals( 712 701 UserSettings.Username.toLowerCase())) { 713 FrameUtils.ParseProfile(FrameIO.LoadFrame(toSave.getFramesetNameAdjusted() + "1")); 702 FrameUtils.ParseProfile(FrameIO.LoadFrame(toSave 703 .getFramesetName() 704 + "1")); 714 705 } 715 706 } catch (IOException ioe) { … … 784 775 } 785 776 777 778 786 779 public static String ConvertToValidFramesetName(String toValidate) { 787 String result = ""; 788 789 boolean capital = true; 790 for (int i = 0; i < toValidate.length(); i++) { 780 assert(toValidate != null && toValidate.length() > 0); 781 782 StringBuffer result = new StringBuffer(); 783 784 if (Character.isDigit(toValidate.charAt(0))){ 785 result.append(FRAME_NAME_LAST_CHAR); 786 } 787 788 boolean capital = false; 789 for (int i = 0; i < toValidate.length() && result.length() < MAX_NAME_LENGTH; i++) { 791 790 char cur = toValidate.charAt(i); 792 791 … … 795 794 if (capital) { 796 795 capital = false; 797 result += ((String) "" + cur).toUpperCase();796 result.append(Character.toUpperCase(cur)); 798 797 } else 799 result += cur; 800 801 if (result.length() >= MAX_NAME_LENGTH) { 802 result = result.substring(0,MAX_NAME_LENGTH); 803 } 798 result.append(cur); 804 799 } else { 805 800 capital = true; 806 801 } 807 802 } 803 assert (result.length() > 0); 804 int lastCharIndex = result.length() - 1; 805 if (!Character.isLetter(result.charAt(lastCharIndex))){ 806 if (lastCharIndex == MAX_NAME_LENGTH - 1) 807 result.setCharAt(lastCharIndex,FRAME_NAME_LAST_CHAR); 808 else 809 result.append(FRAME_NAME_LAST_CHAR); 810 } 808 811 809 return result; 812 assert(IsValidFramesetName(result.toString())); 813 return result.toString(); 810 814 } 811 815 … … 893 897 894 898 public static Boolean DoesFramesetExist(String framesetName) { 895 String zeroFrame = FrameUtils.GetFramesetNameAdjusted(framesetName)+ '0';899 String zeroFrame = framesetName + '0'; 896 900 return FrameIO.DoesFrameExist(zeroFrame); 897 901 } … … 901 905 String conversion = frameset + " --> "; 902 906 903 if (! IsValidFramesetName(frameset)){907 if (!IsValidFramesetName(frameset)) { 904 908 throw new Exception("Invalid frameset name"); 905 909 } 906 910 907 911 if (!recreate && FrameIO.DoesFramesetExist(frameset)) { 908 912 throw new ExistingFramesetException(frameset); … … 950 954 base.setFrameset(frameset); 951 955 base.setFrameNumber(0); 952 base.setTitle(base.getFramesetName Adjusted() + "0");956 base.setTitle(base.getFramesetName() + "0"); 953 957 base.path = path; 954 958 base.change(); … … 965 969 966 970 return base; 967 }private static boolean IsValidFramesetName(String frameset) { 968 for (int i = 0; i < frameset.length(); i++) { 969 // capitalize all characters after spaces 971 } 972 973 /** 974 * Tests if a frameset name is valid. That is it must begin and end with a 975 * letter and contain only letters and digits in between. 976 * 977 * @param frameset the name to be tested 978 * @return true if the frameset name is valid 979 */ 980 public static boolean IsValidFramesetName(String frameset) { 981 if (frameset == null) { 982 return false; 983 } 984 985 int nameLength = frameset.length(); 986 if( frameset.length() <= 0 || nameLength > MAX_NAME_LENGTH){ 987 return false; 988 } 989 990 int lastCharIndex = nameLength- 1; 991 992 if (!Character.isLetter(frameset.charAt(0)) || 993 !Character.isLetter(frameset.charAt(lastCharIndex))) 994 return false; 995 996 for (int i = 1; i < lastCharIndex; i++) { 970 997 if (!Character.isLetterOrDigit(frameset.charAt(i))) { 971 998 return false; … … 974 1001 return true; 975 1002 } 976 977 978 1003 979 1004 public static boolean DeleteFrameset(String framesetName) { -
trunk/src/org/expeditee/gui/FrameKeyboardActions.java
r22 r24 15 15 import org.expeditee.actions.Actions; 16 16 import org.expeditee.actions.Simple; 17 import org.expeditee.agents.ExistingFramesetException;18 17 import org.expeditee.io.Logger; 19 18 import org.expeditee.items.Dot; -
trunk/src/org/expeditee/gui/FrameMouseActions.java
r21 r24 278 278 // This is when the user is anchoring something 279 279 if (_context == CONTEXT_FREESPACE && Frame.itemAttachedToCursor()) { 280 FrameGraphics.ChangeSelectionMode(_lastHighlightedItem, Item.SelectedMode.None); 281 280 FrameGraphics.ChangeSelectionMode(_lastHighlightedItem, 281 Item.SelectedMode.None); 282 282 283 _lastHighlightedItem = Frame.getItemAttachedToCursor(); 283 284 for (Item i : Frame.FreeItems) { … … 320 321 public void mouseReleased(MouseEvent e) { 321 322 FrameUtils.ResponseTimer.restart(); 322 323 323 324 _mouseDown -= e.getButton(); 324 325 updateCursor(); … … 1149 1150 // Just do the sum of the distance moved in x and y direction for 1150 1151 // speed!! 1151 int distance = Math.abs(_lastMouseEvent.getX() - e.getX()) 1152 + Math.abs(_lastMouseEvent.getY() - e.getY()); 1152 /* 1153 * int distance = Math.abs(_lastMouseEvent.getX() - e.getX()) + 1154 * Math.abs(_lastMouseEvent.getY() - e.getY()); 1155 */ 1153 1156 1154 1157 boolean checkHighlight = true; … … 1157 1160 // threshold speed. If so it doesnt execute the code that checks if 1158 1161 // items underneath the cursor need to be highlighted. 1159 /*if (Frame.itemAttachedToCursor()) { 1160 long time = e.getWhen() - _lastMouseEvent.getWhen(); 1161 // System.out.println(time + " D:" + distance); 1162 if (time > 0 && distance * 3 > time) { 1163 checkHighlight = false; 1164 // System.out.println("Dont check highlight!"); 1165 if (_lastHighlightedItem != null && !_lastHoldsHighlight) { 1166 if(_lastHighlightedItem instanceof Text) { 1167 FrameGraphics.ChangeSelectionMode(_lastHighlightedItem, 1168 Item.SelectedMode.None); 1169 } 1170 } 1171 } 1172 }*/ 1162 /* 1163 * if (Frame.itemAttachedToCursor()) { long time = e.getWhen() - 1164 * _lastMouseEvent.getWhen(); // System.out.println(time + " D:" + 1165 * distance); if (time > 0 && distance * 3 > time) { checkHighlight = 1166 * false; // System.out.println("Dont check highlight!"); if 1167 * (_lastHighlightedItem != null && !_lastHoldsHighlight) { 1168 * if(_lastHighlightedItem instanceof Text) { 1169 * FrameGraphics.ChangeSelectionMode(_lastHighlightedItem, 1170 * Item.SelectedMode.None); } } } } 1171 */ 1173 1172 1174 1173 _lastMouseEvent = e; … … 1355 1354 1356 1355 private static void load(String toLoad) { 1357 checkTDFCItemWaiting(); 1358 FrameUtils.DisplayFrame(toLoad); 1356 if (FrameIO.isValidFrameName(toLoad)) { 1357 checkTDFCItemWaiting(); 1358 FrameUtils.DisplayFrame(toLoad); 1359 }else { 1360 FrameGraphics.ErrorMessage(toLoad + " is not a valid frame name."); 1361 } 1359 1362 } 1360 1363 … … 2034 2037 Item ip = FrameUtils.getCurrentItem(); 2035 2038 if (ip != null && clicks > 1) 2036 // base the number of clicks on the size of the object2037 clicks = (int) Math.ceil(ip.getSize() / 20.0 * clicks);2039 // base the number of clicks on the size of the object 2040 clicks = (int) Math.ceil(ip.getSize() / 20.0 * clicks); 2038 2041 2039 2042 FrameKeyboardActions.functionKey(rotationType, clicks); -
trunk/src/org/expeditee/gui/FrameUtils.java
r22 r24 819 819 String link = i.getLink(); 820 820 if (FrameIO.isPositiveInteger(link)) 821 link = toParse.getFramesetName Adjusted() + link;821 link = toParse.getFramesetName() + link; 822 822 Frame overlay = FrameIO.LoadFrame(link); 823 823 // Parse(overlay); … … 1196 1196 null, profile.getFrameName()); 1197 1197 yPos += spacing; 1198 String defaultFrameName = profile.getFramesetName Adjusted() + "0";1198 String defaultFrameName = profile.getFramesetName() + "0"; 1199 1199 profile.addText(xPos, yPos, "@DefaultFrame: " + defaultFrameName, null, 1200 1200 defaultFrameName); … … 1258 1258 FrameIO.SaveFrame(profile); 1259 1259 } 1260 1261 /**1262 * Adjusts a frameset name so a period is appended if it ends in a digit.1263 * This form of the frameset name is used when referencing frames in the1264 * frame set.1265 *1266 * @param frameset1267 * @return1268 */1269 public static String GetFramesetNameAdjusted(String frameset) {1270 return frameset1271 + (Character.isDigit(frameset.charAt(frameset.length() - 1)) ? "."1272 : "");1273 }1274 1260 } -
trunk/src/org/expeditee/items/CommandLineWidget.java
r11 r24 1 1 package org.expeditee.items; 2 2 3 import java.awt.Color;4 import java.awt.Font;5 6 import javax.swing.JSplitPane;7 import javax.swing.JTextArea;8 9 import org.expeditee.gui.Frame;10 3 11 4 public class CommandLineWidget { // extends InteractiveWidget { -
trunk/src/org/expeditee/items/Dot.java
r21 r24 7 7 import java.util.LinkedList; 8 8 import java.util.List; 9 10 import org.expeditee.gui.Frame;11 9 12 10 /** -
trunk/src/org/expeditee/items/Item.java
r22 r24 394 394 // if its a relative link then return absolute 395 395 if (FrameIO.isPositiveInteger(link)) { 396 return _parent.getFramesetName Adjusted()396 return _parent.getFramesetName() 397 397 + Conversion.getFrameNumber(link); 398 398 } … … 1016 1016 if (_parent == null) 1017 1017 framesetName = DisplayIO.getCurrentFrame() 1018 .getFramesetName Adjusted();1018 .getFramesetName(); 1019 1019 else 1020 framesetName = _parent.getFramesetName Adjusted();1020 framesetName = _parent.getFramesetName(); 1021 1021 1022 1022 _link = framesetName + _link; -
trunk/src/org/expeditee/items/Picture.java
r21 r24 107 107 String link = source.getLink(); 108 108 if (FrameIO.isPositiveInteger(link)) { 109 link = source.getParent().getFramesetName Adjusted() + link;109 link = source.getParent().getFramesetName() + link; 110 110 } 111 111 Frame frame = FrameIO.LoadFrame(link); … … 559 559 String link = _source.getLink(); 560 560 if (FrameIO.isPositiveInteger(link)) { 561 link = _source.getParent().getFramesetName Adjusted() + link;561 link = _source.getParent().getFramesetName() + link; 562 562 } 563 563 Frame frame = FrameIO.LoadFrame(link); -
trunk/src/org/expeditee/items/Text.java
r22 r24 23 23 24 24 import org.expeditee.gui.FrameMouseActions; 25 import org.expeditee.items.Item.SelectedMode;26 25 27 26 /**
Note:
See TracChangeset
for help on using the changeset viewer.