display.rc
author claus
Mon, 17 Jan 1994 14:52:06 +0100
changeset 3 04da04464d43
parent 2 353a88ada7c6
child 5 420e4af41733
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
     1
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
     2
 * $Header$
0cb137a77319 Initial revision
claus
parents:
diff changeset
     3
 * display related configuration
0cb137a77319 Initial revision
claus
parents:
diff changeset
     4
 * first do some common setup, then try to find a
0cb137a77319 Initial revision
claus
parents:
diff changeset
     5
 * display specific initialization file.
0cb137a77319 Initial revision
claus
parents:
diff changeset
     6
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
     7
0cb137a77319 Initial revision
claus
parents:
diff changeset
     8
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
     9
 * key bindings common to all display types
0cb137a77319 Initial revision
claus
parents:
diff changeset
    10
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    11
|map|
0cb137a77319 Initial revision
claus
parents:
diff changeset
    12
0cb137a77319 Initial revision
claus
parents:
diff changeset
    13
map := Display keyboardMap.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    14
3
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    15
map bindValue:#DoIt      to:#Cmdd.
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    16
map bindValue:#InspectIt to:#Cmdi.
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    17
map bindValue:#PrintIt   to:#Cmdp.
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    18
1
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    19
map bindValue:#Copy      to:#Cmdc.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    20
map bindValue:#Cut       to:#Cmdx.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    21
map bindValue:#Paste     to:#Cmdv.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    22
map bindValue:#Replace   to:#Cmdr.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    23
map bindValue:#Find      to:#Cmds.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    24
map bindValue:#FindNext  to:#Cmdf.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    25
map bindValue:#FindPrev  to:#Cmdb.
2
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
    26
map bindValue:#SelectAll to:#CmdA.      "that is cmd-shift-a"
1
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    27
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    28
map bindValue:#Accept    to:#Cmda.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    29
map bindValue:#Explain   to:#Cmde.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    30
2
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
    31
map bindValue:#BeginOfLine to:#Ctrla.
1
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    32
map bindValue:#EndOfLine   to:#Ctrle.
a17358fb0999 *** empty log message ***
claus
parents: 0
diff changeset
    33
3
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    34
map bindValue:#SearchMatchingParent to:#Ctrlm.
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    35
map bindValue:#SelectMatchingParents to:#Cmdm.
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
    36
map bindValue:#SelectMatchingParents to:#Cmd.
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
    37
2
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
    38
map bindValue:#SelectToEnd to:#CtrlE.           "that is ctrl-shift-e"
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
    39
map bindValue:#SelectFromBeginning to:#CtrlA.   "that is ctrl-shift-a"
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
    40
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
    41
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    42
 * international characters - map to iso8859 values
0cb137a77319 Initial revision
claus
parents:
diff changeset
    43
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    44
map bindValue:(Character value:16rFC) to:#udiaeresis.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    45
map bindValue:(Character value:16rE4) to:#adiaeresis.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    46
map bindValue:(Character value:16rF6) to:#odiaeresis.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    47
map bindValue:(Character value:16rDC) to:#Udiaeresis.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    48
map bindValue:(Character value:16rC4) to:#Adiaeresis.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    49
map bindValue:(Character value:16rD6) to:#Odiaeresis.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    50
map bindValue:(Character value:16rDF) to:#ssharp.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    51
0cb137a77319 Initial revision
claus
parents:
diff changeset
    52
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    53
 * need more here (french ...)
0cb137a77319 Initial revision
claus
parents:
diff changeset
    54
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    55
0cb137a77319 Initial revision
claus
parents:
diff changeset
    56
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    57
 * misc characters
0cb137a77319 Initial revision
claus
parents:
diff changeset
    58
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    59
map bindValue:(Character value:16rA7) to:#section.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    60
map bindValue:(Character value:16rB0) to:#degree.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    61
map bindValue:(Character value:16rB2) to:#twosuperior.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    62
map bindValue:(Character value:16rB3) to:#threesuperior.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    63
map bindValue:(Character value:16rB5) to:#mu.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    64
!
0cb137a77319 Initial revision
claus
parents:
diff changeset
    65
0cb137a77319 Initial revision
claus
parents:
diff changeset
    66
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    67
 * take a smaller font on small (i.e. vga) screens
0cb137a77319 Initial revision
claus
parents:
diff changeset
    68
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    69
|sz|
0cb137a77319 Initial revision
claus
parents:
diff changeset
    70
0cb137a77319 Initial revision
claus
parents:
diff changeset
    71
sz := 12.
0cb137a77319 Initial revision
claus
parents:
diff changeset
    72
Display width < 800 ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
    73
    sz := 10
0cb137a77319 Initial revision
claus
parents:
diff changeset
    74
].
0cb137a77319 Initial revision
claus
parents:
diff changeset
    75
0cb137a77319 Initial revision
claus
parents:
diff changeset
    76
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    77
 * this defines the default font for all views (actually for all GC's)
0cb137a77319 Initial revision
claus
parents:
diff changeset
    78
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    79
GraphicsContext defaultFont:(Font family:'courier' face:'medium' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    80
0cb137a77319 Initial revision
claus
parents:
diff changeset
    81
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    82
 * this defines the default font for menu views
0cb137a77319 Initial revision
claus
parents:
diff changeset
    83
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
    84
(View defaultStyle == #openwin) ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
    85
    MenuView defaultFont:(Font family:'lucida' face:'medium' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    86
    Launcher defaultFont:(Font family:'lucida' face:'medium' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    87
] ifFalse:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
    88
    (View defaultStyle == #iris) ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
    89
        MenuView defaultFont:(Font family:'helvetica' face:'bold' style:'oblique' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    90
        SelectionInListView defaultFont:(Font family:'helvetica' face:'medium' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    91
        Launcher defaultFont:(Font family:'helvetica' face:'bold' style:'oblique' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    92
    ] ifFalse:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
    93
        MenuView defaultFont:(Font family:'helvetica' face:'bold' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    94
        Launcher defaultFont:(Font family:'helvetica' face:'bold' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
    95
    ]
0cb137a77319 Initial revision
claus
parents:
diff changeset
    96
].
0cb137a77319 Initial revision
claus
parents:
diff changeset
    97
0cb137a77319 Initial revision
claus
parents:
diff changeset
    98
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
    99
 * this defines the default font for code views
0cb137a77319 Initial revision
claus
parents:
diff changeset
   100
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
   101
CodeView defaultFont:(Font family:'courier' face:'medium' style:'roman' size:sz).
0cb137a77319 Initial revision
claus
parents:
diff changeset
   102
0cb137a77319 Initial revision
claus
parents:
diff changeset
   103
' '
0cb137a77319 Initial revision
claus
parents:
diff changeset
   104
!
0cb137a77319 Initial revision
claus
parents:
diff changeset
   105
0cb137a77319 Initial revision
claus
parents:
diff changeset
   106
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
   107
 * find out, on what type of display we run
0cb137a77319 Initial revision
claus
parents:
diff changeset
   108
 * (they should have added this to the x-protocol)
0cb137a77319 Initial revision
claus
parents:
diff changeset
   109
 *
0cb137a77319 Initial revision
claus
parents:
diff changeset
   110
 * look for a file named 'd_<displays-hostname>.rc' and file it in
0cb137a77319 Initial revision
claus
parents:
diff changeset
   111
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
   112
0cb137a77319 Initial revision
claus
parents:
diff changeset
   113
|displayVar display displayType s idx|
0cb137a77319 Initial revision
claus
parents:
diff changeset
   114
0cb137a77319 Initial revision
claus
parents:
diff changeset
   115
"find display name from environment or -display argument"
0cb137a77319 Initial revision
claus
parents:
diff changeset
   116
0cb137a77319 Initial revision
claus
parents:
diff changeset
   117
idx := Arguments indexOf:'-display'.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   118
idx ~~ 0 ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   119
    displayVar := Arguments at:idx + 1.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   120
] ifFalse:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   121
    displayVar := OperatingSystem getEnvironment:'DISPLAY'.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   122
].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   123
display := displayVar.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   124
0cb137a77319 Initial revision
claus
parents:
diff changeset
   125
displayVar notNil ifTrue:[
2
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   126
    ((displayVar startsWith:':0') or:[displayVar startsWith:'unix:0'])  ifTrue:[
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
   127
        display := OperatingSystem getHostName.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   128
    ] ifFalse:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   129
        (displayVar endsWith:':0') ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   130
            display := displayVar copyTo:(displayVar size - 2)
0cb137a77319 Initial revision
claus
parents:
diff changeset
   131
        ]
0cb137a77319 Initial revision
claus
parents:
diff changeset
   132
    ].
2
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   133
    display isNil ifTrue:[
3
04da04464d43 *** empty log message ***
claus
parents: 2
diff changeset
   134
        'cannot determine display I am running on' printNewline.
2
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   135
    ] ifFalse:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   136
        "if there is a corresponding file ..."
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   137
        s := Smalltalk systemFileStreamFor:('d_' , display , '.rc').
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   138
        s notNil ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   139
            displayType := display.
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   140
            s close.
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   141
        ].
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   142
        "otherwise ..."
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   143
        displayType isNil ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   144
            "just an example - stuff could also be hardwired here ..."
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   145
            display notNil ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   146
                (display startsWith:'clam') ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   147
                    displayType := 'next'
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   148
                ].
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   149
                (display startsWith:'porty') ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   150
                    displayType := 'portable'
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   151
                ].
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   152
                (display startsWith:'blue') ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   153
                    displayType := 'iris'
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   154
                ].
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   155
                (display startsWith:'sun') ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   156
                    displayType := 'sun'
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   157
                ].
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   158
                (display startsWith:'slsv') ifTrue:[
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   159
                    "all those machines here at SEL are suns"
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   160
                    displayType := 'sun'
353a88ada7c6 *** empty log message ***
claus
parents: 1
diff changeset
   161
                ].
0
0cb137a77319 Initial revision
claus
parents:
diff changeset
   162
            ].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   163
        ].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   164
    ].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   165
0cb137a77319 Initial revision
claus
parents:
diff changeset
   166
    displayType isNil ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   167
        "use type of machine smalltalk is running on as default ..."
0cb137a77319 Initial revision
claus
parents:
diff changeset
   168
0cb137a77319 Initial revision
claus
parents:
diff changeset
   169
        (displayVar startsWith:':0') ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   170
            displayType := OperatingSystem getSystemType.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   171
        ]
0cb137a77319 Initial revision
claus
parents:
diff changeset
   172
    ]
0cb137a77319 Initial revision
claus
parents:
diff changeset
   173
].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   174
0cb137a77319 Initial revision
claus
parents:
diff changeset
   175
displayType notNil ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   176
    ('reading display setup d_' , displayType , '.rc ...') printNewline.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   177
    Smalltalk fileIn:('d_' , displayType , '.rc')
0cb137a77319 Initial revision
claus
parents:
diff changeset
   178
].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   179
!
0cb137a77319 Initial revision
claus
parents:
diff changeset
   180
0cb137a77319 Initial revision
claus
parents:
diff changeset
   181
"*
0cb137a77319 Initial revision
claus
parents:
diff changeset
   182
 * set a default style, if not been set by rc-file
0cb137a77319 Initial revision
claus
parents:
diff changeset
   183
 * this is set acc. the system we are running on
0cb137a77319 Initial revision
claus
parents:
diff changeset
   184
 *"
0cb137a77319 Initial revision
claus
parents:
diff changeset
   185
|type|
0cb137a77319 Initial revision
claus
parents:
diff changeset
   186
0cb137a77319 Initial revision
claus
parents:
diff changeset
   187
View defaultStyle isNil ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   188
    type := OperatingSystem getSystemType.
0cb137a77319 Initial revision
claus
parents:
diff changeset
   189
    type = 'sunos' ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   190
        View defaultStyle:#openwin
0cb137a77319 Initial revision
claus
parents:
diff changeset
   191
    ].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   192
    type = 'next' ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   193
        View defaultStyle:#next
0cb137a77319 Initial revision
claus
parents:
diff changeset
   194
    ].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   195
    type = 'iris' ifTrue:[
0cb137a77319 Initial revision
claus
parents:
diff changeset
   196
        View defaultStyle:#iris
0cb137a77319 Initial revision
claus
parents:
diff changeset
   197
    ].
0cb137a77319 Initial revision
claus
parents:
diff changeset
   198
]
0cb137a77319 Initial revision
claus
parents:
diff changeset
   199
!