DirectoryDifferenceViewApplication.st
author Claus Gittinger <cg@exept.de>
Mon, 20 Jan 2020 21:02:47 +0100
changeset 19422 c6ca1c3e0fd7
parent 19418 baa308d1ad87
child 19502 329089e25915
permissions -rw-r--r--
#REFACTORING by exept class: MultiViewToolApplication added: #askForFile:default:forSave:thenDo: changed: #askForFile:default:thenDo: #askForFile:thenDo: #menuSaveAllAs #menuSaveAs
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13818
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     1
"
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     3
              All Rights Reserved
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     4
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     5
 This software is furnished under a license and may be used
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     6
 only in accordance with the terms of that license and with the
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     8
 be provided or otherwise made available to, or used by, any
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
     9
 other person.  No title to or ownership of the software is
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    10
 hereby transferred.
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    11
"
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
15245
824d31e08f0f class: DirectoryDifferenceViewApplication
Claus Gittinger <cg@exept.de>
parents: 14500
diff changeset
    14
"{ NameSpace: Smalltalk }"
824d31e08f0f class: DirectoryDifferenceViewApplication
Claus Gittinger <cg@exept.de>
parents: 14500
diff changeset
    15
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
AbstractFileFinderApplicationComponent subclass:#DirectoryDifferenceViewApplication
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	instanceVariableNames:'directory1Holder directory2Holder directory1 directory2
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
		filesOnlyInDirectory1 filesOnlyInDirectory2
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
		filesWhichAreDifferent directoriesOnlyInDirectory1
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
    20
		directoriesOnlyInDirectory2 namePatternHolder
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    21
		excludedNamePatternHolder excludedDirectoryNamePatternHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    22
		ignoreCaseInNameHolder ignoreCaseInExcludedNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    23
		ignoreCaseInExcludedDirectoryNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    24
		ignoreCaseInDirectoryNameHolder filesSkippedCount
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
    25
		directoriesSkippedCount unfilteredFilesList filteredFilesList
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
    26
		hasResultListHolder itemsFoundQueue showWhatHolder'
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
	classVariableNames:''
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
	poolDictionaries:''
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	category:'Interface-Tools-File'
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
13818
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    32
!DirectoryDifferenceViewApplication class methodsFor:'documentation'!
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    33
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    34
copyright
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    35
"
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    36
 COPYRIGHT (c) 2006 by eXept Software AG
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    37
              All Rights Reserved
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    38
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    39
 This software is furnished under a license and may be used
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    40
 only in accordance with the terms of that license and with the
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    41
 inclusion of the above copyright notice.   This software may not
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    42
 be provided or otherwise made available to, or used by, any
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    43
 other person.  No title to or ownership of the software is
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    44
 hereby transferred.
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    45
"
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    46
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    47
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    48
documentation
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    49
"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    50
    documentation to be added.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    51
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    52
    class:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    53
        <a short class summary here, describing what instances represent>
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    54
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    55
    responsibilities:    
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    56
        <describing what my main role is>
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    57
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    58
    collaborators:    
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    59
        <describing with whom and how I talk to>
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    60
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    61
    API:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    62
        <public api and main messages>
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    63
        
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    64
    example:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    65
        <a one-line examples on how to use - can also be in a separate example method>
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    66
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    67
    implementation:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    68
        <implementation points>
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    69
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    70
    [author:]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    71
        exept MBP
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    72
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    73
    [instance variables:]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    74
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    75
    [class variables:]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    76
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    77
    [see also:]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    78
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    79
"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    80
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    81
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    82
examples
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    83
"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    84
 Notice that everything between [exBegin] and [exEnd] is extracted by the html-doc generator
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    85
 to create nicely formatted and clickable executable examples in the generated html-doc.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    86
 (see the browser's class-documentation menu items for more)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    87
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    88
 opening the application:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    89
                                                        [exBegin]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    90
    DirectoryDifferenceViewApplication open
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    91
                                                        [exEnd]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    92
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    93
 opening the application on some model:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    94
                                                        [exBegin]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    95
    DirectoryDifferenceViewApplication openOn:aModel
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    96
                                                        [exEnd]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
    97
"
13818
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
    98
! !
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   100
!DirectoryDifferenceViewApplication class methodsFor:'help specs'!
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   101
17912
5799809770ab #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 17708
diff changeset
   102
helpSpec
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   103
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   104
     by the UIHelpTool of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   105
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   106
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   107
     the UIHelpTool may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   108
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   109
    "
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   110
     UIHelpTool openOnClass:DirectoryDifferenceViewApplication
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   111
    "
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   112
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   113
    <resource: #help>
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   114
17912
5799809770ab #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 17708
diff changeset
   115
    ^ super helpSpec addPairsFrom:#(
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   116
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   117
#excludedDirectoryNamePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   118
'Directory name(s) to skip.\Can be matchPatterns, separated by ";"'
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   119
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   120
#excludedNamePattern
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   121
'File name(s) to skip.\Can be matchPatterns, separated by ";"'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   122
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   123
#ignoreCaseInExcludedDirectoryName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   124
'Ignore case in directory name exclude pattern(s)'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   125
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   126
#ignoreCaseInExcludedName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   127
'Ignore case in file name exclude pattern(s)'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   128
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   129
#ignoreCaseInName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   130
'Ignore case in file name pattern(s)'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   131
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   132
#namePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   133
'Filename(s) to search for.\Can be matchPatterns, separated by ";".\(eg. "*.c ; *.h" searches for C and header files. So does "*.[ch]")'
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   134
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   135
#searchDirectory1
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   136
'The first folder, to be compared against folder2'
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   137
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   138
#searchDirectory2
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   139
'The second folder, to be compared against folder1'
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   140
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   141
#showAll
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   142
'Show all differences in the result list'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   143
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   144
#showDifferent
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   145
'Show only files in the result list\which are present in both, but different'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   146
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   147
#showOnlyIn1
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   148
'Show only files in the result list\which are present in the first directory,\but missing in the second'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   149
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   150
#showOnlyIn2
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   151
'Show only files in the result list\which are present in the second directory,\but missing in the first'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   152
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   153
)
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   154
! !
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   155
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   156
!DirectoryDifferenceViewApplication class methodsFor:'image specs'!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   157
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   158
leftOnlyIcon
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   159
    "This resource specification was automatically generated
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   160
     by the ImageEditor of ST/X."
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   161
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   162
    "Do not manually edit this!! If it is corrupted,
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   163
     the ImageEditor may not be able to read the specification."
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   164
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   165
    "
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   166
     self leftOnlyIcon inspect
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   167
     ImageEditor openOnClass:self andSelector:#leftOnlyIcon
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   168
     Icon flushCachedIcons
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   169
    "
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   170
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   171
    <resource: #image>
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   172
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   173
    ^Icon
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   174
        constantNamed:'DirectoryDifferenceViewApplication class leftOnlyIcon'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   175
        ifAbsentPut:[(Depth8Image width:24 height:24) bits:(ByteArray fromPackedString:'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   176
X6M#X6M#X6M#X6M#X&I"X&I"X&I"X&I"X6M#X6M#X6M#X6M#VE!!"X&I"X&I"X&I"X6M#X6M#X6M#X6MXA ]"X&I"X&I"X&I"X6M#X6M#X6M#X0(KC@5"X&I"
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   177
X&I"X&I"X6M#X6M#X6M#A <PDP5"X&I"X&I"X&I"X6M#X6M#X1LSEADUE 5"X&I"X&I"X&I"X6M#X6M#D1LXE!!$ZD@5"X&I"X&I"X&I"X6M#X6MXA10]G!!<Z
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   178
H@4MCP4MCP4MHRI"X6M#X0(#G"@$IRXZI2 (JATUEQTUBB%"X6M#A"(HER,%G20-K"<0LSD2L3P5M 5"X6L7NB 9G1<&KB4DAC(;OC0=O#=@PP5"X3\>P$L/
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   179
F!!(ZKPPDN#-DOA-EQ$\?R@5"X3]IR"XZKR4-A@P:N1 <O$-LST8TK 5"X6L!!S1H.ACD1L#(;Q@TCQ$YLQ48TT@5"X6M#TUH,P3(:N#P[T5QTUUYWQ$1WLP5"
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   180
X6M#X5!!YL10;QDTCK3D1LSD1L#H;MB%"X6M#X6MXD38/U@MWL 4MCP4MCP4MJRM"X6M#X6M#VALON UFF@5"X&I"X&I"X&I"X6M#X6M#X5 SV30>W@5"X&I"
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   181
X&I"X&I"X6M#X6M#X6MXTU5FU 5"X&I"X&I"X&I"X6M#X6M#X6M#X5!!_X@5"X&I"X&I"X&I"X6M#X6M#X6M#X6MXXP5"X&I"X&I"X&I"X6M#X6M#X6M#X6M#
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   182
VE5"X&I"X&I"X&I"X6M#X6M#X6M#X6M#X&I"X&I"X&I"X&I"')
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   183
            colorMapFromArray:#[251 251 251 249 249 249 234 234 234 210 210 210 224 224 224 213 213 213 184 184 184 176 176 176 238 238 238 245 245 245 200 200 200 187 187 187 240 240 240 171 171 171 233 233 233 198 198 198 246 246 246 249 249 249 236 236 236 174 174 174 207 207 207 241 241 241 247 247 247 226 226 226 219 219 219 237 237 237 227 227 227 216 216 216 231 231 231 247 247 247 234 234 234 229 229 229 245 245 245 178 178 178 188 188 188 185 185 185 232 232 232 231 231 231 228 228 228 244 244 244 242 242 242 175 175 175 193 193 193 232 232 232 228 228 228 225 225 225 229 229 229 227 227 227 226 226 226 223 223 223 221 221 221 220 220 220 219 219 219 223 223 223 237 237 237 179 179 179 200 200 200 236 236 236 221 221 221 220 220 220 217 217 217 214 214 214 213 213 213 210 210 210 215 215 215 235 235 235 239 239 239 230 230 230 218 218 218 212 212 212 208 208 208 202 202 202 230 230 230 211 211 211 238 238 238 209 209 209 205 205 205 204 204 204 201 201 201 197 197 197 225 225 225 183 183 183 187 187 187 217 217 217 214 214 214 212 212 212 211 211 211 209 209 209 196 196 196 180 180 180 248 248 248 186 186 186 215 215 215 180 180 180 240 240 240 174 174 174 196 196 196 172 172 172 255 0 0 0 255 0]
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   184
            mask:((ImageMask width:24 height:24) bits:(ByteArray fromPackedString:'????????????????????????????????????????????????????????????????????????????????????????????????'); yourself); yourself]
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   185
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   186
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   187
rightOnlyIcon
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   188
    "This resource specification was automatically generated
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   189
     by the ImageEditor of ST/X."
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   190
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   191
    "Do not manually edit this!! If it is corrupted,
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   192
     the ImageEditor may not be able to read the specification."
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   193
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   194
    "
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   195
     self rightOnlyIcon inspect
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   196
     ImageEditor openOnClass:self andSelector:#rightOnlyIcon
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   197
     Icon flushCachedIcons
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   198
    "
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   199
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   200
    <resource: #image>
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   201
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   202
    ^Icon
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   203
        constantNamed:'DirectoryDifferenceViewApplication class rightOnlyIcon'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   204
        ifAbsentPut:[(Depth8Image width:24 height:24) bits:(ByteArray fromPackedString:'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   205
X&I"X&I"X&I"X&I"X6M#X6M#X6M#X6M#X&I"X&I"X&I"X%5XX6M#X6M#X6M#X6M#X&I"X&I"X&I"X 5!!VFM#X6M#X6M#X6M#X&I"X&I"X&I"X 5 W5!!#X6M#
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   206
X6M#X6M#X&I"X&I"X&I"X 5VQ%5QVFM#X6M#X6M#X&I"X&I"X&I"X 5\O#1[D5!!#X6M#X6M#X&I"X&I"X&I"X 4XQ T:C1MXX6M#X6M#X"L)CP4MCP4MCP42
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   207
U0MTK38SVFM#X6M#X"$4N3H2LSD1LSD/@4UDN103VU!!#X6M#X 41U41FU5YUUEQSF3P:N#)CKEIQX6M#X 5PED9GSDYF@0UDN3(2LSDDK!!IOHVM#X 4.ED9M
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   208
SD,>OA ;N PDKR4-F"YJRS]#X 5HO4]FQQ,<QC,:A@P-F!!(ZK4MBO#]#X 5APC<>OS0<N3(DAB4,I!!<_NR 8M6M#X 46MSP3L#D1LB<.KR0_IR,UBB(FX6M#
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   209
X"$HEQTUEQT(JB ''F"X%IB@^H0)#X6M#X"H!!CP4MCP4MCP4 F!!<^GQ0GVFM#X6M#X&I"X&I"X&I"X 4PF!!$VFALSX6M#X6M#X&I"X&I"X&I"X 4VEQDTD1M#
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   210
X6M#X6M#X&I"X&I"X&I"X 4QD@<FX6M#X6M#X6M#X&I"X&I"X&I"X 4LB0)#X6M#X6M#X6M#X&I"X&I"X&I"X \FVFM#X6M#X6M#X6M#X&I"X&I"X&I"X%!!X
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   211
X6M#X6M#X6M#X6M#X&I"X&I"X&I"X&I"X6M#X6M#X6M#X6M#')
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   212
            colorMapFromArray:#[251 251 251 249 249 249 234 234 234 210 210 210 224 224 224 213 213 213 184 184 184 176 176 176 238 238 238 245 245 245 200 200 200 187 187 187 240 240 240 171 171 171 233 233 233 198 198 198 246 246 246 249 249 249 236 236 236 174 174 174 207 207 207 241 241 241 247 247 247 226 226 226 219 219 219 237 237 237 227 227 227 216 216 216 231 231 231 247 247 247 234 234 234 229 229 229 245 245 245 178 178 178 188 188 188 185 185 185 232 232 232 231 231 231 228 228 228 244 244 244 242 242 242 175 175 175 193 193 193 232 232 232 228 228 228 225 225 225 229 229 229 227 227 227 226 226 226 223 223 223 221 221 221 220 220 220 219 219 219 223 223 223 237 237 237 179 179 179 200 200 200 236 236 236 221 221 221 220 220 220 217 217 217 214 214 214 213 213 213 210 210 210 215 215 215 235 235 235 239 239 239 230 230 230 218 218 218 212 212 212 208 208 208 202 202 202 230 230 230 211 211 211 238 238 238 209 209 209 205 205 205 204 204 204 201 201 201 197 197 197 225 225 225 183 183 183 187 187 187 217 217 217 214 214 214 212 212 212 211 211 211 209 209 209 196 196 196 180 180 180 248 248 248 186 186 186 215 215 215 180 180 180 240 240 240 174 174 174 196 196 196 172 172 172 255 0 0 0 255 0]
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   213
            mask:((ImageMask width:24 height:24) bits:(ByteArray fromPackedString:'????????????????????????????????????????????????????????????????????????????????????????????????'); yourself); yourself]
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   214
! !
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   215
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
!DirectoryDifferenceViewApplication class methodsFor:'interface specs'!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
windowSpec
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
    "This resource specification was automatically generated
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
     by the UIPainter of ST/X."
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
    "Do not manually edit this!! If it is corrupted,
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
     the UIPainter may not be able to read the specification."
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
    "
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
     UIPainter new openOnClass:DirectoryDifferenceViewApplication andSelector:#windowSpec
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
     DirectoryDifferenceViewApplication new openInterface:#windowSpec
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
     DirectoryDifferenceViewApplication open
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
    "
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
    <resource: #canvas>
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
    ^ 
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   234
    #(FullSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   235
       name: windowSpec
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   236
       uuid: '01d49d90-bac4-11e9-a284-10ddb1cc5928'
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   237
       window: 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   238
      (WindowSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   239
         label: 'Directory Diff'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   240
         name: 'Directory Diff'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   241
         uuid: '09a5b9c0-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   242
         min: (Point 377 131)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   243
         bounds: (Rectangle 0 0 758 512)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   244
      )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   245
       component: 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   246
      (SpecCollection
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   247
         collection: (
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   248
          (MenuPanelSpec
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   249
             name: 'SearchToolBar'
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   250
             layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   251
             uuid: '09a5bd8a-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   252
             level: 0
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   253
             menu: searchMenu
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   254
             textDefault: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   255
          )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   256
          (ProgressIndicatorSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   257
             name: 'ProgressIndicator1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   258
             layout: (LayoutFrame 125 0 11 0 231 0 21 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   259
             uuid: '09a5c06e-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   260
             visibilityChannel: enableStop
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   261
             backgroundColor: (Color 0.0 67.0 67.0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   262
             showPercentage: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   263
             isActivityIndicator: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   264
          )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   265
          (ViewSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   266
             name: 'Box1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   267
             layout: (LayoutFrame 0 0.0 32 0 0 1.0 154 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   268
             uuid: '09a5c2d0-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   269
             component: 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   270
            (SpecCollection
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   271
               collection: (
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   272
                (LabelSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   273
                   label: 'Directory1:'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   274
                   name: 'DirectoryLabel'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   275
                   layout: (LayoutFrame 2 0 7 0 154 0 24 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   276
                   activeHelpKey: searchDirectory1
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   277
                   uuid: '09a5c42e-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   278
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   279
                   adjust: right
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   280
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   281
                (FilenameInputFieldSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   282
                   name: 'DirectoryEntryField'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   283
                   layout: (LayoutFrame 156 0 4 0 0 1 24 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   284
                   activeHelpKey: searchDirectory1
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   285
                   uuid: '09a5c67c-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   286
                   model: directory1Holder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   287
                   immediateAccept: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   288
                   acceptOnPointerLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   289
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   290
                (LabelSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   291
                   label: 'Directory2:'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   292
                   name: 'Label2'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   293
                   layout: (LayoutFrame 2 0 31 0 154 0 48 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   294
                   activeHelpKey: searchDirectory2
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   295
                   uuid: '09a5ca00-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   296
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   297
                   adjust: right
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   298
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   299
                (FilenameInputFieldSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   300
                   name: 'FilenameEntryField1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   301
                   layout: (LayoutFrame 156 0 28 0 0 1 48 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   302
                   activeHelpKey: searchDirectory2
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   303
                   uuid: '09a5cb40-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   304
                   model: directory2Holder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   305
                   immediateAccept: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   306
                   acceptOnPointerLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   307
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   308
                (LabelSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   309
                   label: 'Compare Files Named:'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   310
                   name: 'FileNameLabel'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   311
                   layout: (LayoutFrame 2 0 55 0 154 0 72 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   312
                   activeHelpKey: namePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   313
                   uuid: '09a5ccda-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   314
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   315
                   adjust: right
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   316
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   317
                (InputFieldSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   318
                   name: 'FileNameEntryField'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   319
                   layout: (LayoutFrame 156 0 52 0 -180 1 72 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   320
                   activeHelpKey: namePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   321
                   uuid: '09a5cdf2-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   322
                   tabable: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   323
                   model: namePatternHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   324
                   immediateAccept: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   325
                   acceptOnLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   326
                   acceptOnPointerLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   327
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   328
                (CheckBoxSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   329
                   label: 'Ignore Case'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   330
                   name: 'IgnoreCaseInNameCheckBox'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   331
                   layout: (LayoutFrame -169 1 53 0 -4 1 76 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   332
                   activeHelpKey: ignoreCaseInName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   333
                   uuid: '09a5cfb4-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   334
                   tabable: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   335
                   model: ignoreCaseInNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   336
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   337
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   338
                (LabelSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   339
                   label: 'But Not Named:'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   340
                   name: 'Label1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   341
                   layout: (LayoutFrame 2 0 79 0 190 0 96 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   342
                   activeHelpKey: excludedNamePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   343
                   uuid: '09a5d16c-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   344
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   345
                   adjust: right
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   346
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   347
                (InputFieldSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   348
                   name: 'EntryField1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   349
                   layout: (LayoutFrame 190 0 76 0 -180 1 96 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   350
                   activeHelpKey: excludedNamePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   351
                   uuid: '09a5d284-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   352
                   tabable: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   353
                   model: excludedNamePatternHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   354
                   immediateAccept: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   355
                   acceptOnLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   356
                   acceptOnPointerLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   357
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   358
                (CheckBoxSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   359
                   label: 'Ignore Case'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   360
                   name: 'CheckBox1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   361
                   layout: (LayoutFrame -169 1 77 0 -4 1 100 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   362
                   activeHelpKey: ignoreCaseInExcludedName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   363
                   uuid: '09a5d414-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   364
                   tabable: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   365
                   model: ignoreCaseInExcludedNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   366
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   367
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   368
                (LabelSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   369
                   label: 'Ignore Folders Named:'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   370
                   name: 'Label3'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   371
                   layout: (LayoutFrame 2 0 103 0 190 0 120 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   372
                   activeHelpKey: excludedDirectoryNamePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   373
                   uuid: '09a5d518-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   374
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   375
                   adjust: right
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   376
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   377
                (InputFieldSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   378
                   name: 'EntryField2'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   379
                   layout: (LayoutFrame 190 0 100 0 -180 1 120 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   380
                   activeHelpKey: excludedDirectoryNamePattern
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   381
                   uuid: '09a5d63a-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   382
                   tabable: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   383
                   model: excludedDirectoryNamePatternHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   384
                   immediateAccept: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   385
                   acceptOnLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   386
                   acceptOnPointerLeave: false
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   387
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   388
                (CheckBoxSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   389
                   label: 'Ignore Case'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   390
                   name: 'CheckBox2'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   391
                   layout: (LayoutFrame -169 1 101 0 -4 1 124 0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   392
                   activeHelpKey: ignoreCaseInExcludedDirectoryName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   393
                   uuid: '09a5d7d4-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   394
                   tabable: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   395
                   model: ignoreCaseInExcludedDirectoryNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   396
                   translateLabel: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   397
                )
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
              )
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
            )
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   400
          )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   401
          (VariableVerticalPanelSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   402
             name: 'VariableVerticalPanel1'
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   403
             layout: (LayoutFrame 0 0.0 154 0 0 1.0 0 1)
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   404
             uuid: '09a5d914-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   405
             component: 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   406
            (SpecCollection
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   407
               collection: (
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   408
                (DataSetSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   409
                   name: 'Table1'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   410
                   uuid: '09a5daa4-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   411
                   model: selectionHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   412
                   hasHorizontalScrollBar: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   413
                   hasVerticalScrollBar: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   414
                   dataList: matchedFilesList
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   415
                   doubleClickSelector: fileListDoubleClick:
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   416
                   columnHolder: searchResultTable
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   417
                   valueChangeSelector: fileSelected:
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   418
                   multipleSelectOk: true
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   419
                   useIndex: true
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   420
                )
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   421
                (ArbitraryComponentSpec
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   422
                   name: 'DiffTextView'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   423
                   uuid: '09a5deaa-baa9-11e9-a284-10ddb1cc5928'
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   424
                   hasHorizontalScrollBar: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   425
                   hasVerticalScrollBar: true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   426
                   component: DiffTextView
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   427
                )
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
              )
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
            )
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   430
             handles: (Any 0.5 1.0)
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   431
          )
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
        )
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
      )
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   434
    )
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
! !
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   437
!DirectoryDifferenceViewApplication class methodsFor:'menu specs'!
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   438
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   439
searchMenu
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   440
    "This resource specification was automatically generated
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   441
     by the MenuEditor of ST/X."
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   442
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   443
    "Do not manually edit this!! If it is corrupted,
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   444
     the MenuEditor may not be able to read the specification."
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   445
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   446
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   447
    "
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   448
     MenuEditor new openOnClass:FindFileApplication andSelector:#searchMenu
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   449
     (Menu new fromLiteralArrayEncoding:(FindFileApplication searchMenu)) startUp
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   450
    "
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   451
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   452
    <resource: #menu>
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   453
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   454
    ^ 
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   455
     #(Menu
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   456
        (
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   457
         (MenuItem
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   458
            label: 'Search'
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   459
            itemValue: doSearch
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   460
            translateLabel: true
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   461
            isButton: true
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   462
            labelImage: (ResourceRetriever ToolbarIconLibrary searchFileIcon)
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   463
          )
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   464
         (MenuItem
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   465
            enabled: enableStop
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   466
            label: 'Stop'
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   467
            itemValue: stop
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   468
            translateLabel: true
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   469
            isButton: true
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   470
            isVisible: enableStop
19418
baa308d1ad87 #OTHER by exept
Claus Gittinger <cg@exept.de>
parents: 18985
diff changeset
   471
            labelImage: (ResourceRetriever ToolbarIconLibrary stop22x22Icon)
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   472
          )
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   473
         (MenuItem
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   474
            label: 'Close'
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   475
            itemValue: doClose
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   476
            translateLabel: true
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   477
            isButton: true
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   478
            startGroup: right
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   479
            isVisible: false
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   480
            labelImage: (ResourceRetriever ToolbarIconLibrary removeTabIcon)
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   481
          )
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   482
         (MenuItem
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   483
            activeHelpKey: showOnlyIn1
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   484
            label: 'Only in 1)'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   485
            indication: showOnlyIn1Holder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   486
            labelImage: (ResourceRetriever DirectoryDifferenceViewApplication leftOnlyIcon)
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   487
            isButton: true
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   488
            isVisible: hasResultListHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   489
         )
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   490
         (MenuItem
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   491
            activeHelpKey: showOnlyIn2
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   492
            label: 'Only in 2)'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   493
            indication: showOnlyIn2Holder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   494
            labelImage: (ResourceRetriever DirectoryDifferenceViewApplication rightOnlyIcon)
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   495
            isButton: true
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   496
            isVisible: hasResultListHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   497
         )
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   498
         (MenuItem
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   499
            activeHelpKey: showDifferent
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   500
            label: 'Different Only'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   501
            indication: showDifferentOnlyHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   502
            labelImage: (ResourceRetriever ToolbarIconLibrary diff22x22Icon2)
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   503
            isButton: true
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   504
            isVisible: hasResultListHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   505
         )
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   506
         (MenuItem
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   507
            activeHelpKey: showAll
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   508
            label: 'Show All'
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   509
            indication: showAllHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   510
            isButton: true
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   511
            isVisible: hasResultListHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   512
         )
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   513
         )
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   514
        nil
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   515
        nil
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   516
      )
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   517
! !
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   518
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
!DirectoryDifferenceViewApplication class methodsFor:'tableColumns specs'!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
searchResultTable
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
    "This resource specification was automatically generated
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
     by the DataSetBuilder of ST/X."
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
    "Do not manually edit this!! If it is corrupted,
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
     the DataSetBuilder may not be able to read the specification."
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
    "
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
     DataSetBuilder new openOnClass:DirectoryDifferenceViewApplication andSelector:#searchResultTable
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
    "
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
    <resource: #tableColumns>
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
    ^#(
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
      (DataSetColumnSpec
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
         label: 'Filename'
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
         id: 'FileName'
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
         labelButtonType: Button
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   539
         height: heightOfFirstRow
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
         model: at:
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
         menuFromApplication: false
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
         writeSelector: at:put:
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   543
         canSelect: false
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
         showRowSeparator: false
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
         showColSeparator: false
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   546
      )
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
      (DataSetColumnSpec
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
         label: 'Diff'
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
         id: 'Diff'
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
         labelButtonType: Button
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   551
         height: heightOfFirstRow
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
         model: at:
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
         menuFromApplication: false
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
         writeSelector: at:put:
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   555
         canSelect: false
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
         showRowSeparator: false
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
         showColSeparator: false
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   558
      )
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   559
    )
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   560
! !
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
!DirectoryDifferenceViewApplication methodsFor:'accessing'!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
directory1:directory1Arg directory2:directory2Arg 
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
    self directory1Holder value:directory1Arg.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
    self directory2Holder value:directory2Arg.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
"/    self namePatternHolder value:newPattern.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
    self enableStop value:false.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
    self enableSearch value:true.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
    ^ true.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
    "Modified: / 12-01-2012 / 01:36:54 / cg"
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
directory1Holder
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
    directory1Holder isNil ifTrue:[
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
        directory1Holder := nil asValue
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
    ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
    ^ directory1Holder
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
    "Created: / 12-01-2012 / 01:37:31 / cg"
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
directory2Holder
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
    directory2Holder isNil ifTrue:[
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
        directory2Holder := nil asValue
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   588
    ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   589
    ^ directory2Holder
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
    "Created: / 12-01-2012 / 01:37:41 / cg"
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
! !
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
11116
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   594
!DirectoryDifferenceViewApplication methodsFor:'actions'!
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   595
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   596
fileListDoubleClick:indexOrIndexCollection
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   597
    |idx file fn1 fn2|
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   598
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   599
    idx := (indexOrIndexCollection isInteger)
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   600
            ifTrue:[indexOrIndexCollection]
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   601
            ifFalse:[indexOrIndexCollection first].
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   602
    file := (self shownList at:idx) first.
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   603
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   604
    fn1 := self directory1Holder value asFilename construct:file.
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   605
    fn2 := self directory2Holder value asFilename construct:file.
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   606
    (fn1 exists and:[fn1 isRegularFile]) ifTrue:[
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   607
        self fileDoubleClick:fn1
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   608
    ].
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   609
    (fn2 exists and:[fn2 isRegularFile]) ifTrue:[
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   610
        self fileDoubleClick:fn2
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   611
    ].
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   612
!
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   613
11116
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   614
fileSelected:entries
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   615
    |entry file fn1 fn2 text1 text2 differ|
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   616
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   617
    entries isEmptyOrNil ifTrue:[^ self].
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   618
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   619
    entry := self shownList at:entries first.
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   620
    file := entry first.
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   621
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   622
    fn1 := self directory1Holder value asFilename construct:file.
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   623
    fn2 := self directory2Holder value asFilename construct:file.
15245
824d31e08f0f class: DirectoryDifferenceViewApplication
Claus Gittinger <cg@exept.de>
parents: 14500
diff changeset
   624
    (fn1 exists and:[fn1 isRegularFile]) ifTrue:[
14500
dac4006a72c5 class: DirectoryDifferenceViewApplication
Claus Gittinger <cg@exept.de>
parents: 13818
diff changeset
   625
        text1 := fn1 contentsAsString.
11116
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   626
    ].
15245
824d31e08f0f class: DirectoryDifferenceViewApplication
Claus Gittinger <cg@exept.de>
parents: 14500
diff changeset
   627
    (fn2 exists and:[fn2 isRegularFile]) ifTrue:[
14500
dac4006a72c5 class: DirectoryDifferenceViewApplication
Claus Gittinger <cg@exept.de>
parents: 13818
diff changeset
   628
        text2 := fn2 contentsAsString.
11116
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   629
    ].
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   630
    differ := builder componentAt:'DiffTextView'.
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   631
    differ text1:(text1 ? '') text2:(text2 ? '').
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   632
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   633
    "Created: / 12-01-2012 / 03:21:52 / cg"
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   634
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   635
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   636
shouldShow:aListItem
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   637
    |showingWhat|
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   638
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   639
    showingWhat := self showWhatHolder value.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   640
    showingWhat == #all ifTrue:[^ true].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   641
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   642
    "/ showing filtered
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   643
    ^ (aListItem at:3) == showingWhat
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   644
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   645
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   646
shownFilesChanged
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   647
    |showingWhat|
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   648
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   649
    showingWhat := self showWhatHolder value.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   650
    showingWhat == #all ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   651
        self matchedFilesList contents:unfilteredFilesList.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   652
        "/ self shownListHolder valueHolder:unfilteredFilesList.
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   653
        self shownListHolder valueHolder:unfilteredFilesList.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   654
        ^ self.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   655
    ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   656
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   657
    "/ showing filtered
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   658
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   659
    filteredFilesList contents:(unfilteredFilesList select:[:entry | (entry at:3) == showingWhat]).
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   660
    self matchedFilesList contents:filteredFilesList.
18985
07c8f4612bf4 #BUGFIX by exept
Claus Gittinger <cg@exept.de>
parents: 18980
diff changeset
   661
    self shownListHolder valueHolder:filteredFilesList.
11116
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   662
! !
86de3247a42f added: #fileSelected:
Claus Gittinger <cg@exept.de>
parents: 11105
diff changeset
   663
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   664
!DirectoryDifferenceViewApplication methodsFor:'aspects'!
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   665
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   666
excludedDirectoryNamePatternHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   667
    excludedDirectoryNamePatternHolder isNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   668
        excludedDirectoryNamePatternHolder := '' asValue.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   669
    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   670
    ^ excludedDirectoryNamePatternHolder.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   671
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   672
    "Created: / 13-01-2012 / 14:42:47 / cg"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   673
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   674
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   675
excludedNamePatternHolder
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   676
    excludedNamePatternHolder isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   677
        excludedNamePatternHolder := '' asValue.
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   678
    ].
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   679
    ^ excludedNamePatternHolder.
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   680
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   681
    "Created: / 13-01-2012 / 14:42:47 / cg"
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   682
!
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   683
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   684
filteredFilesList
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   685
    filteredFilesList isNil ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   686
        filteredFilesList := List new.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   687
    ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   688
    ^ filteredFilesList.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   689
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   690
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   691
hasResultListHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   692
    hasResultListHolder isNil ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   693
        hasResultListHolder := BlockValue
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   694
                                with:[:l | l value notEmptyOrNil]
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   695
                                argument:(self unfilteredFilesList)
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   696
    ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   697
    ^ hasResultListHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   698
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   699
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   700
ignoreCaseInDirectoryNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   701
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   702
    ignoreCaseInDirectoryNameHolder isNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   703
        ignoreCaseInDirectoryNameHolder := true asValue.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   704
    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   705
    ^ ignoreCaseInDirectoryNameHolder.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   706
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   707
    "Created: / 13-01-2012 / 14:37:28 / cg"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   708
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   709
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   710
ignoreCaseInExcludedDirectoryNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   711
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   712
    ignoreCaseInExcludedDirectoryNameHolder isNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   713
        ignoreCaseInExcludedDirectoryNameHolder := true asValue.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   714
    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   715
    ^ ignoreCaseInExcludedDirectoryNameHolder.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   716
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   717
    "Created: / 13-01-2012 / 14:37:28 / cg"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   718
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   719
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   720
ignoreCaseInExcludedNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   721
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   722
    ignoreCaseInExcludedNameHolder isNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   723
        ignoreCaseInExcludedNameHolder := true asValue.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   724
    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   725
    ^ ignoreCaseInExcludedNameHolder.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   726
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   727
    "Created: / 13-01-2012 / 14:37:28 / cg"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   728
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   729
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   730
ignoreCaseInNameHolder
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   731
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   732
    ignoreCaseInNameHolder isNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   733
        ignoreCaseInNameHolder := true asValue.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   734
    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   735
    ^ ignoreCaseInNameHolder.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   736
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   737
    "Created: / 13-01-2012 / 14:37:28 / cg"
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   738
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   739
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   740
namePatternHolder
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   741
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   742
    namePatternHolder isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   743
        namePatternHolder := '*' asValue.
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   744
    ].
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   745
    ^ namePatternHolder.
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   746
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   747
    "Created: / 13-01-2012 / 14:37:28 / cg"
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   748
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   749
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   750
showAllHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   751
    ^ (PluggableAdaptor on:(self showWhatHolder)) selectValue:#all
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   752
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   753
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   754
showDifferentOnlyHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   755
    ^ (PluggableAdaptor on:(self showWhatHolder)) selectValue:#different
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   756
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   757
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   758
showOnlyIn1Holder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   759
    ^ (PluggableAdaptor on:(self showWhatHolder)) selectValue:#onlyIn1
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   760
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   761
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   762
showOnlyIn2Holder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   763
    ^ (PluggableAdaptor on:(self showWhatHolder)) selectValue:#onlyIn2
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   764
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   765
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   766
showWhatHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   767
    showWhatHolder isNil ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   768
        showWhatHolder := #all asValue.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   769
        showWhatHolder onChangeSend:#shownFilesChanged to:self
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   770
    ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   771
    ^ showWhatHolder
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   772
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   773
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   774
unfilteredFilesList
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   775
    unfilteredFilesList isNil ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   776
        unfilteredFilesList := List new.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   777
    ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   778
    ^ unfilteredFilesList.
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   779
! !
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   780
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   781
!DirectoryDifferenceViewApplication methodsFor:'comparing'!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   782
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   783
doSearch
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   784
    |dir1 dir2 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   785
     namePattern excludedNamePattern excludedDirectoryNamePattern 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   786
     ignoreCaseInName ignoreCaseInExcludeName ignoreCaseInExcludeDirectoryName
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   787
     fileExcludeFilterOrNil directoryExcludeFilterOrNil checkDir|
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   788
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   789
    filesOnlyInDirectory1 := OrderedCollection new.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
    filesOnlyInDirectory2 := OrderedCollection new.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
    directoriesOnlyInDirectory1 := OrderedCollection new.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   792
    directoriesOnlyInDirectory2 := OrderedCollection new.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
    filesWhichAreDifferent := OrderedCollection new.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   794
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   795
    filesSkippedCount := directoriesSkippedCount := 0.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   796
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
    dir1 := self directory1Holder value.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   798
    dir1 isNil ifTrue:[^ self].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   799
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   800
    dir2 := self directory2Holder value.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
    dir2 isNil ifTrue:[^ self].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   802
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   803
    dir1 := dir1 asFilename.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   804
    dir2 := dir2 asFilename.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   806
    dir1 pathName = dir2 pathName ifTrue:[
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   807
        self notify:('Same folder.' allBold).
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   808
        ^ self.
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   809
    ].
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   810
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   811
    namePattern := self namePatternHolder value.
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   812
    namePattern notEmptyOrNil ifTrue:[
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   813
        namePattern := namePattern withoutSeparators.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   814
        (namePattern isEmptyOrNil or:[namePattern = '*']) ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   815
            namePattern := nil
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   816
        ]
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   817
    ].
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   818
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   819
    ignoreCaseInName := self ignoreCaseInNameHolder value.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   820
    ignoreCaseInExcludeName := self ignoreCaseInExcludedNameHolder value.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   821
    ignoreCaseInExcludeDirectoryName := self ignoreCaseInExcludedDirectoryNameHolder value.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   822
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   823
    excludedNamePattern := self excludedNamePatternHolder value.
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   824
    excludedNamePattern notEmptyOrNil ifTrue:[
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   825
        excludedNamePattern := excludedNamePattern withoutSeparators.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   826
        excludedNamePattern notEmptyOrNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   827
            fileExcludeFilterOrNil := 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   828
                ignoreCaseInExcludeName 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   829
                    ifTrue:[  [:baseName | (excludedNamePattern compoundMatch:baseName caseSensitive:false) not ] ]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   830
                    ifFalse:[  [:baseName | (excludedNamePattern compoundMatch:baseName caseSensitive:true) not ] ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   831
        ].
11123
6cbaa2e319a3 added: #searchMenu
Claus Gittinger <cg@exept.de>
parents: 11121
diff changeset
   832
    ].
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   833
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   834
    excludedDirectoryNamePattern := self excludedDirectoryNamePatternHolder value.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   835
    excludedDirectoryNamePattern notEmptyOrNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   836
        excludedDirectoryNamePattern := excludedDirectoryNamePattern withoutSeparators.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   837
        excludedDirectoryNamePattern notEmptyOrNil ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   838
            checkDir := 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   839
                ignoreCaseInExcludeDirectoryName 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   840
                    ifTrue:[ [:dir | (excludedDirectoryNamePattern compoundMatch:(dir baseName) caseSensitive:false) not ] ]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   841
                    ifFalse:[ [:dir | (excludedDirectoryNamePattern compoundMatch:(dir baseName) caseSensitive:true) not ] ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   842
            directoryExcludeFilterOrNil := 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   843
                [:fn |
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   844
                    (checkDir value:fn) ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   845
                        directoriesSkippedCount := directoriesSkippedCount + 1.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   846
                        false.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   847
                    ] ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   848
                        true
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   849
                    ]
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   850
                ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   851
        ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   852
    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   853
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   854
    self unfilteredFilesList removeAll.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   855
    self filteredFilesList removeAll.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   856
    self shownFilesChanged. "/ to set the filtered list
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   857
11564
67a8e0885c2c changed: #doSearch
Claus Gittinger <cg@exept.de>
parents: 11123
diff changeset
   858
    self windowGroup repairDamage.
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   859
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   860
    itemsFoundQueue := SharedQueue new.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   861
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   862
    self 
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   863
        startSearchTask:[
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   864
            self changeInformationTo:'Directory Diff - searching ' toTab:true.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   865
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   866
            dir1 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   867
                recursiveDirectoryContentsDo:[:relFn1 |
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   868
                    |fn1 fn2 fn1BaseName newListItem|
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   869
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   870
                    fn1 := dir1 construct:relFn1.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   871
                    fn1BaseName := fn1 baseName.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   872
                    newListItem := nil.
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   873
                    (namePattern isNil or:[namePattern compoundMatch:fn1BaseName caseSensitive:ignoreCaseInName not]) ifTrue:[
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   874
                        (fileExcludeFilterOrNil isNil or:[(fileExcludeFilterOrNil value:fn1BaseName) not]) ifTrue:[
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   875
                            fn2 := dir2 construct:relFn1.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   876
                            fn1 isDirectory ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   877
                                self notify:('Comparing %1...' bindWith:relFn1 asString allBold).
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   878
                                fn2 exists ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   879
                                    directoriesOnlyInDirectory1 add:fn1.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   880
                                    newListItem := { relFn1 . 'Directory only in directory1' . #onlyIn1}.
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   881
                                ].
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   882
                            ] ifFalse:[
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   883
                                fn2 exists ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   884
                                    filesSearchedCount := filesSearchedCount + 1.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   885
                                    (fn1 sameContentsAs:fn2) ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   886
                                        filesWhichAreDifferent add:fn1.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   887
                                        newListItem := { relFn1 . 'Different' . #different }.
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   888
                                    ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   889
                                ] ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   890
                                    filesOnlyInDirectory1 add:fn1.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   891
                                    newListItem := { relFn1 . 'File only in directory1' . #onlyIn1}.
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   892
                                ].
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   893
                            ].
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   894
                            newListItem notNil ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   895
                                unfilteredFilesList add:newListItem.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   896
                                itemsFoundQueue add:newListItem.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   897
                                self enqueueMessage:#updateList for:self arguments:#().
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   898
                            ].
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   899
                        ] ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   900
                            filesSkippedCount := filesSkippedCount + 1.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   901
                        ]
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   902
                    ]
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   903
                ]
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   904
                filterForVisitingDirectories:directoryExcludeFilterOrNil.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   905
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   906
            dir2 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   907
                recursiveDirectoryContentsDo:[:relFn2 |
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   908
                    |fn1 fn2 fn2BaseName newListItem|
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   909
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   910
                    fn2 := dir2 construct:relFn2.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   911
                    fn2BaseName := fn2 baseName.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   912
                    (namePattern isNil or:[namePattern compoundMatch:fn2BaseName caseSensitive:ignoreCaseInName not]) ifTrue:[
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   913
                        (fileExcludeFilterOrNil isNil or:[(fileExcludeFilterOrNil value:fn2BaseName) not]) ifTrue:[
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   914
                            fn1 := dir1 construct:relFn2.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   915
                            fn1 exists ifFalse:[
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   916
                                fn2 isDirectory ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   917
                                    directoriesOnlyInDirectory2 add:fn2.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   918
                                    newListItem := { relFn2 . 'Directory only in directory2'  . #onlyIn2}.
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   919
                                ] ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   920
                                    filesOnlyInDirectory2 add:fn2.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   921
                                    newListItem := { relFn2 . 'File only in directory2'  . #onlyIn2}.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   922
                                ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   923
                                newListItem notNil ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   924
                                    unfilteredFilesList add:newListItem.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   925
                                    itemsFoundQueue add:newListItem.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   926
                                    self enqueueMessage:#updateList for:self arguments:#().
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   927
                                ].
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   928
                            ].
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   929
                        ].
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   930
                    ] ifFalse:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   931
                        filesSkippedCount := filesSkippedCount + 1.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   932
                    ]
11121
Claus Gittinger <cg@exept.de>
parents: 11116
diff changeset
   933
                ]
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   934
                filterForVisitingDirectories:directoryExcludeFilterOrNil.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   935
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   936
            Transcript showCR:'--- search summary ------'.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   937
            directoriesSkippedCount ~~ 0 ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   938
                Transcript showCR:'%1 directories skipped' with:directoriesSkippedCount.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   939
            ].
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   940
            filesSkippedCount ~~ 0 ifTrue:[
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   941
                Transcript showCR:'%1 files skipped' with:filesSkippedCount.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   942
            ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   943
            filesOnlyInDirectory1 notEmpty ifTrue:[
18594
c0508c7f1fcb #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17912
diff changeset
   944
                Transcript showCR:'%1 files only in directory1' with:filesOnlyInDirectory1 size.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   945
            ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   946
            filesOnlyInDirectory2 notEmpty ifTrue:[
18594
c0508c7f1fcb #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17912
diff changeset
   947
                Transcript showCR:'%1 files only in directory2' with:filesOnlyInDirectory2 size.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   948
            ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   949
            directoriesOnlyInDirectory1 notEmpty ifTrue:[
18594
c0508c7f1fcb #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17912
diff changeset
   950
                Transcript showCR:'%1 directories only in directory1' with:directoriesOnlyInDirectory1 size.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   951
            ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   952
            directoriesOnlyInDirectory2 notEmpty ifTrue:[
18594
c0508c7f1fcb #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17912
diff changeset
   953
                Transcript showCR:'%1 directories only in directory2' with:directoriesOnlyInDirectory2 size.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   954
            ].
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   955
            filesWhichAreDifferent notEmpty ifTrue:[
18594
c0508c7f1fcb #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17912
diff changeset
   956
                Transcript showCR:'%1 files are different' with:filesWhichAreDifferent size.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
            ]
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
        ]
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
        name:'Directory Diff'.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   960
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   961
    "Created: / 12-01-2012 / 01:07:20 / cg"
18594
c0508c7f1fcb #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17912
diff changeset
   962
    "Modified: / 15-02-2019 / 09:42:51 / Claus Gittinger"
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   963
!
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   964
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   965
generateResultStringForTimeElapsed:timeDuration
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   966
    "at the end of a search, generate a nice informative summary string.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   967
     Redefined to generate a different message."
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   968
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   969
    |timeMillis timeString nIn1 nIn2 nDifferent|
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   970
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   971
    timeMillis := timeDuration asMilliseconds.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   972
    timeString := timeDuration printStringForApproximation.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   973
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   974
    nIn1 := filesOnlyInDirectory1 size.
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   975
    nIn2 := filesOnlyInDirectory2 size.
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   976
    nDifferent := filesWhichAreDifferent size.
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   977
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   978
    ^ resources 
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   979
        string:('different:%1, only in 1: %2, only in 2: %3 (%4 files visited; %6 files/s).') 
18978
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   980
        with:nDifferent 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   981
        with:nIn1 
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   982
        with:nIn2
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   983
        with:filesSearchedCount
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   984
        with:(UnitConverter fileSizeSIStringFor:(bytesSearchedCount * 1000 / (timeMillis max:1)))
ff91b0569f14 #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18594
diff changeset
   985
        with:((filesSearchedCount * 1000 / (timeMillis max:1)) asFixedPoint:1).
18980
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   986
!
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   987
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   988
updateList
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   989
    |next|
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   990
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   991
    [(next := itemsFoundQueue nextOrNil) notNil] whileTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   992
        (self shouldShow:next) ifTrue:[
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   993
            filteredFilesList add:next.
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   994
            self matchedFilesList add:next
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   995
        ]
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   996
    ].
9a7a39ce4d6f #FEATURE by exept
Claus Gittinger <cg@exept.de>
parents: 18978
diff changeset
   997
    self windowGroup repairDamage.
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   998
! !
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1000
!DirectoryDifferenceViewApplication methodsFor:'startup & release'!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1001
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1002
postOpenWith:aBuilder
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1003
    super postOpenWith:aBuilder.
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1004
    self doSearch
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1005
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1006
    "Created: / 12-01-2012 / 01:41:18 / cg"
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1007
! !
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
!DirectoryDifferenceViewApplication class methodsFor:'documentation'!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
version
17708
a6aa502cde52 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15245
diff changeset
  1012
    ^ '$Header$'
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
!
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
version_CVS
17708
a6aa502cde52 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15245
diff changeset
  1016
    ^ '$Header$'
11105
7983da617733 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1017
! !
13818
cfc8c51359dd merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 11564
diff changeset
  1018