original commit: 6ce44c2533b1c506107f6b8f9c02deb689620ac4
This commit is contained in:
Matthew Flatt 1998-09-06 01:56:59 +00:00
parent 24b9a2ebf3
commit 2de9c0c9e4
3 changed files with 27 additions and 88 deletions

View File

@ -176,7 +176,9 @@
(class-asi frame%
(private (pre-on void))
(override [on-subwindow-event (lambda args (apply pre-on args))]
[on-subwindow-char on-subwindow-event])
[on-subwindow-char on-subwindow-event]
[on-move (lambda (x y) (printf "moved: ~a ~a~n" x y))]
[on-size (lambda (x y) (printf "sized: ~a ~a~n" x y))])
(public [set-info
(lambda (ep)
(set! pre-on (add-pre-note this ep)))])))
@ -1225,7 +1227,7 @@
(define p (make-object vertical-panel% f))
(define c% (class canvas% (name swapped-name p)
(inherit get-dc get-scroll-pos get-scroll-range get-scroll-page
get-client-size get-virtual-size)
get-client-size get-virtual-size get-view-start)
(public
[vw 10]
[vh 10]
@ -1242,15 +1244,17 @@
(get-scroll-page 'horizontal))]
[dc (get-dc)])
(let-values ([(w h) (get-client-size)]
[(w2 h2) (get-virtual-size)])
[(w2 h2) (get-virtual-size)]
[(x y) (get-view-start)])
; (send dc set-clipping-region 0 0 w2 h2)
(send dc clear)
(send dc draw-text (if (send ck-w get-value) swapped-name name) 3 3)
; (draw-line 3 12 40 12)
(send dc draw-text s 3 15)
(send dc draw-text (format "client: ~s x ~s virtual: ~s x ~s"
(send dc draw-text (format "client: ~s x ~s virtual: ~s x ~s view: ~s x ~s"
w h
w2 h2)
w2 h2
x y)
3 27)
(send dc draw-line 0 vh vw vh)
(send dc draw-line vw 0 vw vh))))]

View File

@ -350,7 +350,7 @@ text-field% : control<%>
<= label parent callback [init-val ""] [style '(single)]
styles: 'single, 'multiple, 'hscroll
get-value set-value
get-edit
get-editor
radio-box% : control<%>
<= label choices parent callback [style '(vertical)]
@ -387,6 +387,7 @@ list-box% : list-control<%>
canvas<%> : subwindow<%>
on-char on-event on-paint on-scroll
popup-menu warp-pointer get-dc
client-min-width client-min-height
canvas% : canvas<%>
<= parent [style null]
@ -405,7 +406,7 @@ editor-canvas% : canvas<%>
scroll-with-bottom-base - parameter-like
lazy-refresh - parameter-like
force-display-focus - parameter-like
get-edit set-edit - formerly get-media and set-media
get-editor set-editor - formerly get-media and set-media
set-line-count
menu-item<%>
@ -923,6 +924,8 @@ get-the-buffer-data-class-list
5. Subtle changes
======================================================================
Added queue-callback: (queue-callback proc [hi-priority?])
key-event%'s key-code method was removed
key-event%'s get-key-code returns a character or a symbol
@ -942,6 +945,19 @@ media-buffer%'s do-edit changed to editor<%>'s do-edit-operation,
pasteboard%'s {on,after}-interactive-move takes a mouse-event% object
Xt: key-event% for a numpad ENTER key reports 'numpad-enter for the
key code instead of #\return
An editor's selection caret now blinks; added a blink-caret method to
editor<%> and snip%
Added 'unknown image kind for bitmap%'s load-file, etc., which
examines the file to determine the type automatically.
'wx flag for make-namespace changed to 'mred
canvas%'s get-view-start returns values in pixels, not scroll units
-----------------------------
TODO: Miscellaneous Cleanup
-----------------------------

View File

@ -1,81 +0,0 @@
/* -*- C++ -*-
* $Id: GroupBox.cc,v 1.1 1996/01/10 14:57:11 markus Exp $
*
* Purpose: group box choice panel item
*
* Authors: Markus Holzem and Julian Smart
*
* Copyright: (C) 1995, AIAI, University of Edinburgh (Julian)
* Copyright: (C) 1995, GNU (Markus)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifdef __GNUG__
#pragma implementation "GroupBox.h"
#endif
#define Uses_XtIntrinsic
#define Uses_wxGroupBox
#include "wx.h"
#define Uses_EnforcerWidget
#include "widgets.h"
//-----------------------------------------------------------------------------
// create and destroy group box
//-----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxGroupBox, wxItem)
wxGroupBox::wxGroupBox(void) : wxItem()
{
__type = wxTYPE_GROUP_BOX;
}
wxGroupBox::wxGroupBox(wxPanel *panel, char *label, int x, int y, int width,
int height, long style, char *name)
{
__type = wxTYPE_GROUP_BOX;
Create(panel, label, x, y, width, height, style, name);
}
Bool wxGroupBox::Create(wxPanel *panel, char *label, int x, int y, int width,
int height, long style, char *name)
{
ChainToPanel(panel, style, name);
Bool vert = (panel->GetLabelPosition() == wxVERTICAL);
label = wxGetCtlLabel(label);
// create frame
X->frame = X->handle = XtVaCreateManagedWidget
(name, xfwfEnforcerWidgetClass, parent->GetHandle()->handle,
XtNlabel, label,
XtNalignment, vert ? XfwfTop : XfwfTopLeft,
XtNbackground, bg->GetPixel(cmap),
XtNforeground, label_fg->GetPixel(cmap),
XtNfont, label_font->GetInternalFont(),
XtNframeType, XfwfChiseled,
XtNframeWidth, 2,
XtNhighlightThickness, 0, XtNtraversalOn, FALSE,
NULL);
// panel positioning
panel->PositionItem(this, x, y,
(width > -1 ? width : wxGROUP_BOX_WIDTH),
(height > -1 ? height : wxGROUP_BOX_HEIGHT));
return TRUE;
}