home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 5 Edit
/
05-Edit.zip
/
p2demo21.exe
/
PEL
/
TOOLBAR.PEL
< prev
next >
Wrap
Text File
|
1995-02-07
|
11KB
|
333 lines
# $Header: P:\source\wmacros\toolbar.pev 1.42 07 Feb 1995 13:15:12 WALKER $
## $Tabs:4 7$
##############################################################################
#
# Compuware Corporation
# 31440 Northwestern Highway
# Farmington Hills, Michigan 48334-2564
#
# This source code listing contains information that is
# proprietary to Compuware Corporation and may not be copied
# duplicated, translated, transmitted, stored, retrieved
# or in any manner or by any method conveyed or disclosed
# to a third party or parties without express written
# permission from Compuware Corporation.
#
#
##############################################################################
#### $Workfile: toolbar.pel $
##############################################################################
### Valid Toolbar buttons are listed below:
local TBMP_NEW = 1
local TBMP_OPEN = 2
local TBMP_SAVE = 3
local TBMP_PRINTER = 4
local TBMP_CUT = 5
local TBMP_COPY = 6
local TBMP_PASTE = 7
local TBMP_UNDO = 8
local TBMP_REDO = 9
local TBMP_FIND = 10
local TBMP_FINDNEXT = 11
local TBMP_CHANGE = 12
local TBMP_CLOSE = 13
local TBMP_PREVBUF = 14
local TBMP_NEXTBUF = 15
local TBMP_LISTBUF = 16
local TBMP_PREVERR = 17
local TBMP_NEXTERR = 18
local TBMP_LISTDLG = 19
##############################################################################
local BUTTON_WIDTH = 26
local BUTTON_DISTANCE = 1
local GROUP_DISTANCE = 8
local BUTTON_SPACING = BUTTON_WIDTH + BUTTON_DISTANCE
global TOOLBAR_BUTTON = 0x0001
global TOOLBAR_SEPARATOR = 0x0002
# location of first button
local bp = 0
local editor_toolbar
function create_default_toolbar()
{
editor_toolbar = create_toolbar()
insert_toolbaritem(editor_toolbar, IDM_NEW, TOOLBAR_BUTTON, bp, 4, TBMP_NEW, "gui_new" )
insert_toolbaritem(editor_toolbar, IDM_ADDFILE, TOOLBAR_BUTTON, _next(), 4, TBMP_OPEN, "gui_open" )
insert_toolbaritem(editor_toolbar, IDM_SAVE, TOOLBAR_BUTTON, _next(), 4, TBMP_SAVE, "gui_save" )
insert_toolbaritem(editor_toolbar, IDM_PRINT, TOOLBAR_BUTTON, _next(), 4, TBMP_PRINTER, "gui_print" )
insert_toolbaritem(editor_toolbar, IDM_CUT, TOOLBAR_BUTTON, _next(1), 4, TBMP_CUT, "gui_delete_to_scrap" )
insert_toolbaritem(editor_toolbar, IDM_COPY, TOOLBAR_BUTTON, _next(), 4, TBMP_COPY, "copy_to_scrap_key" )
insert_toolbaritem(editor_toolbar, IDM_PASTE, TOOLBAR_BUTTON, _next(), 4, TBMP_PASTE, "insert_scrap" )
insert_toolbaritem(editor_toolbar, IDM_UNDO, TOOLBAR_BUTTON, _next(1), 4, TBMP_UNDO, "gui_undo" )
insert_toolbaritem(editor_toolbar, IDM_REDO, TOOLBAR_BUTTON, _next(), 4, TBMP_REDO, "gui_redo" )
insert_toolbaritem(editor_toolbar, IDM_FIND, TOOLBAR_BUTTON, _next(1), 4, TBMP_FIND, "gui_find" )
insert_toolbaritem(editor_toolbar, IDM_FINDAGAIN, TOOLBAR_BUTTON, _next(), 4, TBMP_FINDNEXT, "gui_search_again" )
insert_toolbaritem(editor_toolbar, IDM_CHANGE, TOOLBAR_BUTTON, _next(), 4, TBMP_CHANGE, "gui_change" )
insert_toolbaritem(editor_toolbar, IDM_CLOSE, TOOLBAR_BUTTON, _next(1), 4, TBMP_CLOSE, "gui_delete_buffer" )
insert_toolbaritem(editor_toolbar, IDM_PREV, TOOLBAR_BUTTON, _next(), 4, TBMP_PREVBUF, "prev_buffer_mask" )
insert_toolbaritem(editor_toolbar, IDM_NEXT, TOOLBAR_BUTTON, _next(), 4, TBMP_NEXTBUF, "next_buffer_mask" )
insert_toolbaritem(editor_toolbar, IDM_BUFFERLIST, TOOLBAR_BUTTON, _next(), 4, TBMP_LISTBUF, "buffer_list" )
insert_toolbaritem(editor_toolbar, IDM_PREVERR, TOOLBAR_BUTTON, _next(1), 4, TBMP_PREVERR, "goto_prev_error" )
insert_toolbaritem(editor_toolbar, IDM_NEXTERR, TOOLBAR_BUTTON, _next(), 4, TBMP_NEXTERR, "goto_next_error" )
insert_toolbaritem(editor_toolbar, IDM_DIALOG_LIST, TOOLBAR_BUTTON,_next(), 4, TBMP_LISTDLG, "dialog_list" )
}
function delete_editor_toolbar()
{
if ( editor_toolbar )
{
hide_toolbar(editor_toolbar)
delete_toolbar(editor_toolbar)
editor_toolbar = 0
}
}
local x
local y
local floating_tb_dialog, floating_tb
local function create_floating_toolbar()
{
local starty
x = 0
y = 4
if ( !floating_tb_dialog )
{
floating_tb_dialog = create_mdialog_template( function_id("floating_callback"), -1, "P/2",
0, 0, BUTTON_SPACING * 2 + 18, BUTTON_SPACING * 10 + 36 + 28 )
floating_tb = create_toolbar(floating_tb_dialog, BUTTON_SPACING * 10 + 6 + 28)
insert_toolbaritem(floating_tb, IDM_DIALOG_LIST, TOOLBAR_BUTTON, x,y, TBMP_LISTDLG, "dialog_list" )
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_PREVERR, TOOLBAR_BUTTON, x, y, TBMP_PREVERR, "goto_prev_error" )
insert_toolbaritem(floating_tb, IDM_NEXTERR, TOOLBAR_BUTTON, _nextx(), y, TBMP_NEXTERR, "goto_next_error" )
y += 7
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_UNDO, TOOLBAR_BUTTON, x, y, TBMP_UNDO, "gui_undo" )
insert_toolbaritem(floating_tb, IDM_REDO, TOOLBAR_BUTTON, _nextx(), y, TBMP_REDO, "gui_redo" )
y += 7
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_FINDAGAIN, TOOLBAR_BUTTON, x, y, TBMP_FINDNEXT, "gui_search_again" )
insert_toolbaritem(floating_tb, IDM_CHANGE, TOOLBAR_BUTTON, _nextx(), y, TBMP_CHANGE, "gui_change" )
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_PASTE, TOOLBAR_BUTTON, x, y, TBMP_PASTE, "insert_scrap" )
insert_toolbaritem(floating_tb, IDM_FIND, TOOLBAR_BUTTON, _nextx(), y, TBMP_FIND,"gui_find" )
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_CUT, TOOLBAR_BUTTON, x, y, TBMP_CUT, "gui_delete_to_scrap" )
insert_toolbaritem(floating_tb, IDM_COPY, TOOLBAR_BUTTON, _nextx(), y, TBMP_COPY, "copy_to_scrap_key" )
y += 7
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_NEXT, TOOLBAR_BUTTON, x, y, TBMP_NEXTBUF, "next_buffer_mask" )
insert_toolbaritem(floating_tb, IDM_BUFFERLIST, TOOLBAR_BUTTON, _nextx(), y, TBMP_LISTBUF, "buffer_list" )
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_CLOSE, TOOLBAR_BUTTON, x, y, TBMP_CLOSE, "gui_delete_buffer" )
insert_toolbaritem(floating_tb, IDM_PREV, TOOLBAR_BUTTON, _nextx(), y, TBMP_PREVBUF, "prev_buffer_mask" )
y += 7
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_SAVE, TOOLBAR_BUTTON, x, y, TBMP_SAVE, "gui_save" )
insert_toolbaritem(floating_tb, IDM_PRINT, TOOLBAR_BUTTON, _nextx(), y, TBMP_PRINTER, "gui_print" )
_nexty()
x = 0
insert_toolbaritem(floating_tb, IDM_NEW, TOOLBAR_BUTTON, x, y, TBMP_NEW, "gui_new" )
insert_toolbaritem(floating_tb, IDM_ADDFILE, TOOLBAR_BUTTON, _nextx(), y, TBMP_OPEN, "gui_open" )
show_toolbar( floating_tb )
set_dialog_window( floating_tb_dialog, DWC_NORMALBORDER )
set_dialog_window( floating_tb_dialog, DWC_STICKONTOP, 1 )
}
}
global function floating_callback()
{
if ( callback_msg == DM_CLOSE || callback_msg == DM_CANCEL )
{
# this gets focus put to the currently active text window
current_window = current_window
}
else if ( callback_msg == DM_CLICK )
return DRC_MSG_PROCESSED
return DRC_CONTINUE
}
local function _nextx()
{
x += BUTTON_SPACING
return x
}
local function _nexty()
{
y += BUTTON_SPACING
return y
}
local function _next( group )
{
if (group)
group = GROUP_DISTANCE
else
group = BUTTON_DISTANCE
return bp += BUTTON_WIDTH + group
}
global function toggle_floating_toolbar(enable)
{
local action, old_state
enable += 0;
if ( (argcount() == 0 || ( argcount() == 1 && enable ) ) )
{
if ( !floating_tb_dialog )
{
create_floating_toolbar()
old_state = 0
}
else
old_state = toolbar_info(floating_tb, TB_IS_VISIBLE)
}
else if ( !floating_tb_dialog )
{
create_floating_toolbar()
return 0
}
if( argcount() < 1 )
enable = !old_state
if( enable > 0 && !old_state )
{
set_dialog_window( floating_tb_dialog, DWC_SHOW )
# show_toolbar(floating_tb)
}
else
{
set_dialog_window( floating_tb_dialog, DWC_HIDE )
# hide_toolbar(floating_tb)
}
return old_state
}
function toggle_toolbar( enable )
{
local tbhand
local action, old_state
tbhand = toolbar_info(0);
if ( !tbhand )
return FALSE
enable += 0;
old_state = toolbar_info(tbhand, TB_IS_VISIBLE)
if( argcount() < 1 )
enable = !old_state
if( enable > 0 && !old_state )
show_toolbar(tbhand)
else
hide_toolbar(tbhand)
return old_state
}
global function position_floating_tb( x, y )
{
if ( floating_tb_dialog )
set_dialog_window( floating_tb_dialog, DWC_POSITION, x+0, y+0 )
}
function toolbar_settings( settings_index, settings_data )
{
local pos
local new_array
local tbhand
local visible = 0
tbhand = toolbar_info(0);
if ( tbhand )
visible = toolbar_info(tbhand, TB_IS_VISIBLE)
settings_data[ settings_index++ ] = sprintf( "toggle_toolbar %d\n", visible )
if ( floating_tb_dialog )
visible = toolbar_info(floating_tb, TB_IS_VISIBLE)
else
visible = 0
if ( visible )
{
settings_data[ settings_index++ ] = sprintf( "toggle_floating_toolbar %d\n", 0 )
pos = query_dialog_window( floating_tb_dialog, DWC_POSITION );
settings_data[ settings_index++ ] = sprintf( "position_floating_tb %d %d\n", pos / 65536, pos % 65536)
settings_data[ settings_index++ ] = sprintf( "toggle_floating_toolbar %d\n", 1 )
}
new_array.array = settings_data
new_array.index = settings_index
return new_array
}