|
@@ -4,6 +4,7 @@ |
4 |
4 |
|
import java.util.*; |
5 |
5 |
|
|
6 |
6 |
|
import org.litesoft.core.simpletypes.*; |
|
7 |
+ |
import org.litesoft.core.util.*; |
7 |
8 |
|
|
8 |
9 |
|
import static org.litesoft.core.simpletypes.nonpublic.EqualSupport.calcHashCode; |
9 |
10 |
|
import static org.litesoft.core.util.UtilsCommon.*; |
|
@@ -408,16 +409,22 @@ |
408 |
409 |
|
mView.show( zDrillDownSet ); |
409 |
410 |
|
} |
410 |
411 |
|
|
411 |
|
- |
public void viewSelected( ViewEntry<T> pEntry) |
|
412 |
+ |
public void viewSelected( ViewEntry<T> pEntry ) |
412 |
413 |
|
{ |
413 |
|
- |
if ( !(pEntry instanceof Between) ) |
|
414 |
+ |
UtilsCommon.assertNotNull( "Entry", pEntry ); |
|
415 |
+ |
if ( pEntry.isBetween() ) |
|
416 |
+ |
{ |
|
417 |
+ |
mSelectedBetweens.add( ((Between<T>) pEntry).copyAsSelected() ); |
|
418 |
+ |
DrillDownSet zDrillDownSet = updateDrillDownSetWhenSelectedBetweensChange( mCurrentEntriesVisible, mSelectedBetweens ); |
|
419 |
+ |
mView.show( zDrillDownSet ); |
|
420 |
+ |
return; |
|
421 |
+ |
} |
|
422 |
+ |
if ( pEntry.isSelectable() ) |
414 |
423 |
|
{ |
415 |
424 |
|
mView.injectBetween( pEntry.getLowerReference(), pEntry.getUpperReference() ); |
416 |
425 |
|
return; |
417 |
426 |
|
} |
418 |
|
- |
mSelectedBetweens.add( ((Between<T>)pEntry).copyAsSelected() ); |
419 |
|
- |
DrillDownSet zDrillDownSet = updateDrillDownSetWhenSelectedBetweensChange( mCurrentEntriesVisible, mSelectedBetweens ); |
420 |
|
- |
mView.show( zDrillDownSet ); |
|
427 |
+ |
throw new IllegalArgumentException( "Can not 'viewSelected' for type '" + UtilsCommon.justSimpleName( pEntry ) + "': " + pEntry ); |
421 |
428 |
|
} |
422 |
429 |
|
|
423 |
430 |
|
/** |
|
@@ -499,8 +506,8 @@ |
499 |
506 |
|
int zInjectInsToAdd = mInjectIns.size() - 1; |
500 |
507 |
|
int zAvailableBetweenBuckets = Math.min( zInjectInsToAdd, (pCount - 3) / 2 ); |
501 |
508 |
|
|
502 |
|
- |
System.out.println( "buildHomeViewSett( " + zSelectedBetween + " ): " + // |
503 |
|
- |
pCount + " ( " + mInjectIns.size() + " ) " + zInjectInsToAdd + " | " + zAvailableBetweenBuckets ); |
|
509 |
+ |
// System.out.println( "buildHomeViewSett( " + zSelectedBetween + " ): " + // |
|
510 |
+ |
// pCount + " ( " + mInjectIns.size() + " ) " + zInjectInsToAdd + " | " + zAvailableBetweenBuckets ); |
504 |
511 |
|
|
505 |
512 |
|
ArrayList<ViewEntry> zEntries = new ArrayList<ViewEntry>( pCount ); |
506 |
513 |
|
pViewSets.add( new ViewSet( zEntries ) ); |
|
@@ -516,18 +523,18 @@ |
516 |
523 |
|
int zLastNdx = zCurrNdx; |
517 |
524 |
|
T zLastT = zCurrT; |
518 |
525 |
|
int zHowMany = zInjectInsToAdd / zAvailableBetweenBuckets; |
519 |
|
- |
System.out.print( " zInjectInsToAdd / zAvailableBetweenBuckets ==> " + zInjectInsToAdd + " / " + zAvailableBetweenBuckets + " = " + zHowMany ); |
|
526 |
+ |
// System.out.print( " zInjectInsToAdd / zAvailableBetweenBuckets ==> " + zInjectInsToAdd + " / " + zAvailableBetweenBuckets + " = " + zHowMany ); |
520 |
527 |
|
zInjectInsToAdd -= zHowMany; |
521 |
528 |
|
zCurrNdx += zHowMany; |
522 |
529 |
|
zCurrT = mInjectIns.get( zCurrNdx ); |
523 |
530 |
|
if ( zHowMany == 1 ) |
524 |
531 |
|
{ |
525 |
|
- |
System.out.println( " Add There 1" ); |
|
532 |
+ |
// System.out.println( " Add There 1" ); |
526 |
533 |
|
zEntries.add( There.create( zLastT, zCurrT ) ); |
527 |
534 |
|
} |
528 |
535 |
|
else |
529 |
536 |
|
{ |
530 |
|
- |
System.out.println( " Add Between " + zHowMany ); |
|
537 |
+ |
// System.out.println( " Add Between " + zHowMany ); |
531 |
538 |
|
if ( isSelected( zSelectedBetween, zLastT, zCurrT ) ) |
532 |
539 |
|
{ |
533 |
540 |
|
zEntries.add( zSelectedBetween ); |
|
@@ -551,8 +558,8 @@ |
551 |
558 |
|
int zInjectInsToAdd = zLowerNdx - zUpperNdx; |
552 |
559 |
|
int zAvailableBetweenBuckets = Math.min( zInjectInsToAdd, pCount / 2 ); |
553 |
560 |
|
|
554 |
|
- |
System.out.println( " buildSubsequentViewSet( " + pCurrentIndex + " => " + zSelectedBetween + " ): " + // |
555 |
|
- |
pCount + " ( " + zUpperNdx + ", " + zLowerNdx + " ) " + zInjectInsToAdd + " | " + zAvailableBetweenBuckets ); |
|
561 |
+ |
// System.out.println( " buildSubsequentViewSet( " + pCurrentIndex + " => " + zSelectedBetween + " ): " + // |
|
562 |
+ |
// pCount + " ( " + zUpperNdx + ", " + zLowerNdx + " ) " + zInjectInsToAdd + " | " + zAvailableBetweenBuckets ); |
556 |
563 |
|
|
557 |
564 |
|
ArrayList<ViewEntry> zEntries = new ArrayList<ViewEntry>( pCount ); |
558 |
565 |
|
pViewSets.add( new ViewSet( zEntries ) ); |
|
@@ -567,18 +574,18 @@ |
567 |
574 |
|
int zLastNdx = zCurrNdx; |
568 |
575 |
|
T zLastT = zCurrT; |
569 |
576 |
|
int zHowMany = zInjectInsToAdd / zAvailableBetweenBuckets; |
570 |
|
- |
System.out.print( " zInjectInsToAdd / zAvailableBetweenBuckets ==> " + zInjectInsToAdd + " / " + zAvailableBetweenBuckets + " = " + zHowMany ); |
|
577 |
+ |
// System.out.print( " zInjectInsToAdd / zAvailableBetweenBuckets ==> " + zInjectInsToAdd + " / " + zAvailableBetweenBuckets + " = " + zHowMany ); |
571 |
578 |
|
zInjectInsToAdd -= zHowMany; |
572 |
579 |
|
zCurrNdx += zHowMany; |
573 |
580 |
|
zCurrT = mInjectIns.get( zCurrNdx ); |
574 |
581 |
|
if ( zHowMany == 1 ) |
575 |
582 |
|
{ |
576 |
|
- |
System.out.println( " Add There 1" ); |
|
583 |
+ |
// System.out.println( " Add There 1" ); |
577 |
584 |
|
zEntries.add( There.create( zLastT, zCurrT ) ); |
578 |
585 |
|
} |
579 |
586 |
|
else |
580 |
587 |
|
{ |
581 |
|
- |
System.out.println( " Add Between " + zHowMany ); |
|
588 |
+ |
// System.out.println( " Add Between " + zHowMany ); |
582 |
589 |
|
if ( isSelected( zSelectedBetween, zLastT, zCurrT ) ) |
583 |
590 |
|
{ |
584 |
591 |
|
zEntries.add( zSelectedBetween ); |