2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
14 * DEFINITIONS ________________________________________________________________
30 #define ACT_ENDCHANGE 0x0002
31 #define ACT_UNCOVER 0x0004
32 #define ACT_SELPREVIEW 0x0008
36 HWND hChild
; // g.hMain or server window to update
37 DISPLAYTARGET dt
; // expect which kind of listview?
38 LPIDENT lpiNotify
; // NULL or specific LPIDENT to update
39 ULONG status
; // if (lpiNotify), associated error code
40 LPIDENT lpiServer
; // NULL or parent server
41 LPIDENT lpiAggregate
; // NULL or parent aggregate
42 LPIDENT lpiToSelect
; // NULL or LPIDENT to select when done
43 LPVIEWINFO lpvi
; // NULL or specific viewinfo to use
44 HWND hList
; // (worker routines set this)
45 WORD actOnDone
; // (worker routines set this)
46 BOOL fList
; // (worker routines set this)
47 } DISPLAYREQUEST
, *LPDISPLAYREQUEST
;
51 * PROTOTYPES _________________________________________________________________
55 ICONVIEW
Display_GetServerIconView (void);
57 BOOL CALLBACK
GetItemText (HWND hList
, LPFLN_GETITEMTEXT_PARAMS pfln
, UINT_PTR dwCookie
);
60 *** HandleColumnNotify
62 * This routine handles the FLN_COLUMNCLICK and FLN_COLUMNRESIZE notifications.
63 * This routine returns TRUE if it handled the message; if so, its caller
64 * should return FASLE from the dlgproc.
68 BOOL
HandleColumnNotify (HWND hDlg
, UINT msg
, WPARAM wp
, LPARAM lp
, LPVIEWINFO pvi
);
73 * This routine is the interface to updating any list-of-LPIDENTs in the tool;
74 * that includes the list-of-servers, the listviews and treeviews on each
75 * of the server window's tabs, and things like aggregate lists and fileset
76 * replica lists in various dialogs.
78 * If called with fWait=FALSE, the request is queued and performed on a
79 * separate worker thread; if it's TRUE, the request is performed before
80 * returning (as always, don't ever block the main thread this way).
82 * You'll need to pass in a filled-in DISPLAYREQUEST structure; this is copied
83 * to local storage, so it can be a local variable even if !fWait.
87 void UpdateDisplay (LPDISPLAYREQUEST pdr
, BOOL fWait
);
93 * These routines act as wrappers to UpdateDisplay(); they create an
94 * appropriate DISPLAYREQUEST packet and pass it along.
98 void UpdateDisplay_Cell (BOOL fWait
);
99 void UpdateDisplay_Servers (BOOL fWait
, LPIDENT lpiNotify
, ULONG status
);
100 void UpdateDisplay_Services (BOOL fWait
, HWND hChild
, LPIDENT lpiNotify
, ULONG status
);
101 void UpdateDisplay_Aggregates (BOOL fWait
, HWND hListOrCombo
, LPIDENT lpiNotify
, ULONG status
, LPIDENT lpiServer
, LPIDENT lpiToSelect
, LPVIEWINFO lpvi
);
102 void UpdateDisplay_Filesets (BOOL fWait
, HWND hListOrCombo
, LPIDENT lpiNotify
, ULONG status
, LPIDENT lpiServer
, LPIDENT lpiAggregate
, LPIDENT lpiToSelect
);
103 void UpdateDisplay_Replicas (BOOL fWait
, HWND hList
, LPIDENT lpiRW
, LPIDENT lpiRO
);
104 void UpdateDisplay_ServerWindow (BOOL fWait
, LPIDENT lpiServer
);
105 void UpdateDisplay_SetIconView (BOOL fWait
, HWND hDialog
, LPICONVIEW piv
, ICONVIEW ivNew
);