[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Octave Workshop 0.9 & Windows Installer
From: |
John Swensen |
Subject: |
Re: Octave Workshop 0.9 & Windows Installer |
Date: |
Tue, 21 Feb 2006 07:19:37 -0700 |
User-agent: |
Thunderbird 1.4.1 (Windows/20051006) |
Simon Persson wrote:
> On Tuesday 21 February 2006 04:39, Bill Denney wrote:
>
>> I thought that you mentioned that there was a variable window, but I can't
>> find it.
>>
>>
> I'm working on that... thought it would be a nice way to introduce myself.
> Have it a basic working window, some details to fix left. Maybe someone can
> guide me... Still need to find names of fields in structures, the only way I
> can see it work is to check for variables which type record contains 'struct'
> and then use that name in symbol_table::subsymbol_list. Is there a better
> way?
>
>
>> A view menu that would allow me to open or close various MDI sub-windows
>> would be nice (along with the requisite X in the corners).
>>
>>
>
> I was thinking about adding an option to use MDI or tabs. I think people will
> want different layouts. I like tabs myself.
> Anyway, that's a later problem for me at least.
>
>
>> Have an option to squash duplicated commands in the command history to one
>> command.
>>
>> A pony.
>>
>> Bill
>>
>
> Simon
>
Simon,
This was robbed heavily from the 'whos' function.
<<<<BEGIN CODE>>>>
// This method prints information for sets of symbols, but only one
// set at a time (like, for instance: all variables, or all
// built-in-functions).
// This method invokes print_symbol_info_line to print info on every
// symbol.
int status = 0;
ostringstream variableList;
// XXX FIXME XXX Should separate argv to lists with and without
dots.
Array<symbol_record *> xsymbols = top_level_sym_tab->symbol_list
( string_vector(), 0xFF, SYMTAB_ALL_SCOPES);
Array<symbol_record *> xsubsymbols =
top_level_sym_tab->subsymbol_list ( string_vector(), 0xFF,
SYMTAB_ALL_SCOPES);
int sym_len = xsymbols.length (), subsym_len =
xsubsymbols.length (),
len = sym_len + subsym_len;
Array<symbol_record *> symbols (len);
if (len > 0)
{
size_t bytes = 0;
size_t elements = 0;
int i;
// Joining symbolic tables.
for (i = 0; i < sym_len; i++)
symbols(i) = xsymbols(i);
for (i = 0; i < subsym_len; i++)
symbols(i+sym_len) = xsubsymbols(i);
for (int j = 0; j < len; j++)
{
if( symbols(j)->is_user_variable() )
{
variableList << symbols(j)->name() <<
"," << symbols(j)->rows() << "x" << symbols(j)->columns() << "," <<
symbols(j)->byte_size() << "," << symbols(j)->type_name() << "," << endl;
//cout << symbols(j)->name() << "," <<
symbols(j)->rows() << "x" << symbols(j)->columns() << "," <<
symbols(j)->byte_size() << "," << symbols(j)->type_name() << "," << endl;
}
}
send_variable_list( variableList.str() );
}
return status;
<<<<END CODE>>>>
Hope it helps.
John Swensen
- Re: Octave Workshop 0.9 & Windows Installer, (continued)