-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog.2.0
1673 lines (1224 loc) · 69.7 KB
/
ChangeLog.2.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2000-08-12 Randall C. O'Reilly <[email protected]>
* Version 2.0 Released Today!!
2000-08-09 Randall C. O'Reilly <[email protected]>
* src/pdp/sched_proc.cc: do UpdateAfterEdit on all processes after
doing a change type -- allows them to fix their pointers.
2000-08-08 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.cc: display wasn't updating when color scale
scroll bars were adjusted.
* src/pdp/procs_extra.cc (GridSearchBatch): rewrote code for
decoding parameter path -- was using FindFromPath incorrectly to
search for non taBase items.
* src/ta/ta_base.cc (taBase::FindFromPath): fixed a bad assumption
that found object inherits from taBase -- now check!
2000-07-30 Randall C. O'Reilly <[email protected]>
* src/ta_lib_min/: made a separate compile directory for the
lib_min version of the ta library (libtypea_min.a/so), so that
this can be made much less intrusively! the special 'make links'
action will refresh the links of the files from src/ta -- the only
files unique to this dir are the _TA files.
* css/hard_of_css/hofcss_demo.css: added a demo program for
showing how to compile a standalone css script into an executable
program using c++. Basically the libtype_min and libhard_css
libraries are linked, and the css/hard_of_css.h include is
included. See this directory for details.
* src/xcss: added a demo program for showing how to use ta/css
outside of the PDP++ context. this program, xcss, can be used to
run psychological experiments under css control (where milisecond
precise timing is not required) -- it provides a ta/css friendly
interface to the InterViews canvas and events.
2000-07-28 Randall C. O'Reilly <[email protected]>
* src/css/css_parse.y: fixed a few bug situations with the
argument count checking for script functions -- deals with
pointers and the builtin functions Load, Save, etc.
2000-07-24 Randall C. O'Reilly <[email protected]>
* Updated 2.0b3 on the ftp site (announced a few days ealier, but
updated with latest changes), including .exe files for CYGWIN
install.
* src/ta/taiv_data.cc (taivGetFile): getting the directory from a
file name was kinda braindead, now it's fixed.
* src/pdp/pdpshell.cc: loading a project from another directory
will now change the default directory to that directory.
2000-07-22 Randall C. O'Reilly <[email protected]>
* src/pdp/pdp_iv.cc: added a new "View Specs" mode to the project
view window, which toggles to viewing the spec objects instead of
the overall project objects. hitting "View Project" will toggle
back to the normal display. While in spec viewing mode, one can
create new children of specs, and show/set the application of a
spec in the network window just by clicking on the spec and
hitting the corresponding button. children groups are shown, and
objects can be transfered into a child group by selecting the
group and the object to be transferred.
also, in project view mode, all groups are now shown, with members
of the group indented. these groups can be iconified to simplify
display.
* src/pdp/netstru.cc (NetView::ShowUnitSpec): now will select the
layer using given unit spec if there is one, as this is the proper
level to set a unit spec for an entire layer.
2000-07-20 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro_iv.cc: fixed the same problem as in GridLog where
a literal draw and damage_me was being performed in
update_from_state.
* src/css/css_parse.y: fixed the do loop code in css -- you can
now use continue and break inside the do loop, whereas before this
did not work.
2000-07-19 Randall C. O'Reilly <[email protected]>
* src/css/css_parse.y: css now detects when you call a function
with the wrong number of args. This works for everything except
for builtin C member functions (class members), but these do not
have such catestrophic failure with bad args anyway.
* src/pdp/netstru.cc: removing a projection now calls RemoveCons()
on the entire network because all projections and connections are
potentially invalidated by this removal.
* src/ta_misc/datatable.cc: for non-visible lines, was not setting
the color at all, causing crash in CYGWIN -- now setting color to
black.
also, in process of debugging this, broke, then fixed GetHeaders
in pdplog.cc (latest 2.0b2 release was broken, is now fixed).
* src/ta_misc/datatable_iv.cc: fixed GridLog display updating,
update_from_state, which was doing both a literal draw and a
damage_me, which is both inefficient and just plain wrong, and was
causing a crash under CYGWIN.
2000-07-18 Randall C. O'Reilly <[email protected]>
* src/pdp/pdplog_iv.cc: CYGWIN has the text log spacing too wide -
fixed.
* config/Makefile.defs (EXE_EXT): added define for executable
extension, needed under CYGWIN.
2000-07-11 Randall C. O'Reilly <[email protected]>
* first CYGWIN release under 2.0b2
* src/ta_misc/fontspec.h: font spec now compares the pattern to
the previous pattern to prevent lots of unneccessary font looking
up. also, will translate any helvetica font into Arial and
vice-versa for converting between CYGWIN and unix. Also is much
kinder to CYGWIN fonts, which are not cannonical unlike the X
fonts.
* src/pdp/pdpshell.cc: preventing multiple updates of the project
window for Project::UpdateMenus (sub objs will try to do
InitDisplay).
* src/pdp/pdpshell.h (PDPRoot): added ConsoleLine menu option for
windows version (CYGWIN) -- allows entering of one line into
console. this is needed because the console and the gui are not
on the same event loop.
NOTE: later removed this because I fixed the event loop in CYGWIN
* src/pdp/net_iv.cc: weird netview screen flashing bug fixed --
caused by Xform_gs not being virtual on Pline_G and so self con
was not computing correct xform and so getextent was not correct
leading to weird random effects! this only occured with self
connections.
2000-07-10 Randall C. O'Reilly <[email protected]>
* src/ta/taiv_data.h: now avoiding lots of push_style() calls by
just caching the relevant fonts. should speed up menu and such
creation quite a bit!
* src/css/css_lex.cc (yylex): css stream processing commands now
properly ignore '\r' carriage returns (which MSDOS/WIN insists on
inserting).
* src/ta/typea.cc (taMisc): stream input processing commands now
properly ignore '\r' carriage returns (which MSDOS/WIN insists on
inserting).
* src/ta_misc/win_base.cc: changed the processing of iconified
windows --- iconified is no longer checked and operated on in
WinBase::UpdateAfterEdit, and instead is only checked and called
in winbMisc::OpenWindows, after all windows are initially opened.
Move, Place: Move used to be same as place -- changed to
compute a delta relative to current placement and call Place.
Place now ensures that placement of windows is greater than 0!
2000-07-08 Randall C. O'Reilly <[email protected]>
* config/Makefile.defs (X11_LIB): the definition of the X11
library is now a define so that it can be replaced in CYGWIN with
-lgdi32 -luser32
* src/ta_misc/win_base.cc: excized dragzonesink as the outer-most
glyph for windows -- no need if not using dragpage which we're
not, and it isn't supported in cygwin.
2000-07-03 Randall C. O'Reilly <[email protected]>
* src/pdp/procs_extra.cc: fix various crash conditions in
UnitActRFStat.
2000-06-21 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.cc: right-mouse-button click on projections will
immediately bring up an edit dialog for that projection.
* src/ta_misc/datatable_iv.cc: all text display in blocks for
gridlogview, netview, and enviroview now displays "0.0" if there
is a e- exponent in the value, which otherwise produces
confusingly large initial digits when the text string is truncated.
* src/pdp/pdplog_iv.cc (GridLogView): added AllBlockTextOn/Off,
which turns on or off additional text display for items that are
viewed as colored blocks.
* src/pdp/pdp_iv.cc: added Duplicate Obj to project viewer for
networks, environments, and logs.
* src/css/machine.cc (cssProgSpace::ExitShell): set the Restart
flag upon exiting the shell, which will get rid of any running
scripts and should cause fewer crashes when doing recompile after
a script has stopped with a bug.
* interviews/src/lib/InterViews/field.c: added left & right arrow
and home, end key processing for edit fields.
2000-06-20 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro_iv.cc: increased maximum number of events within
the enviroview event scroll box area to 100,000 instead of 10,000.
2000-06-16 Randall C. O'Reilly <[email protected]>
* src/pdp/pdp_iv.cc: added Transfer Obj menu in Project View --
can transfer a process or stat into a different process or stat
subgroup. Selecting a schedule process brings up a dialog asking
which subgroup to transfer into on that sched proc.
* src/ta/ta_base.cc (taList_impl::ChangeType): will now
automatically change to a base type and then to a derived type if
called to change to another derived type of this base type.
* src/ta_misc/script_base.cc: all script_base derivatives now only
do SetScript("") if script_file.name is empty --- prevents losing
script files when objects are transferred.
* src/pdp/net_iv.cc: scoping is now fixed on monitor stat menu in
the netview.
* src/pdp/procs_extra.cc (GridSearchBatch): param_path can now
successfully point to array elements (e.g., s_args).
2000-06-15 Randall C. O'Reilly <[email protected]>
* version 2.0b2 (2.0 beta, release 2) released, with SUN4 and
LINUX and SGI binaries.
* /src/pdp/ and others: fixed a number of compiler warnings from
the SUN4 (solaris) compiler.
* src/ta/taiv_data.cc: need a special extra close() operation on
the file descriptor for compressed files on SOLARIS. added this
as a general call because it doesn't seem to hurt and other
systems might have this problem too.
2000-06-14 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.cc: AllocCon(0) now does nothing. previously it
would open a dialog box asking for number of cons to create!
2000-06-13 Randall C. O'Reilly <[email protected]>
* src/pdp/pdp_iv.cc: added New Agg button for selected stat object
in project view.
* src/pdp/stats.cc (MonitorStat): removing monitor stats will
automatically update the network menus for the monitor stats.
* src/pdp/netstru.cc (Network::ConnectUnits): fixed crash in
SelfConUnit - actually in Layer::CheckConnect, if
prjn->con_spec.spec was NULL. also fixed ordering so this null
not encountered.
2000-06-13 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.cc (Con_Group::Dump_Save_Value,
Dump_Load_Value): warn if units have a null path when saving (can
happen if units are removed from a layer and then build-all is
done w/out a subsequent connect all). Also, loading now works if
connections were not created due to null unit paths.
also notify *sending* prjns that things have changed after a build-all
so this won't happen (ConnectAll will be highlighted)
also prevent single-unit updating for Layer::Build when switching from
z = 1 to z > 1 (subunitgroups).
2000-06-02 Randall C. O'Reilly <[email protected]>
* version 2.0b released!
2000-06-01 Randall C. O'Reilly <[email protected]>
* config/Makefile.std: added standard lower-case with underbars
versions of all the makefile commands (e.g., optLib -> opt_lib).
* src/pdp/enviro_iv.cc, datatable_iv.cc, datagraph.cc, net_iv.cc
(render_text): fixed the transform process in all cases of direct
text rendering -- using inverse instead of null xform, which works
with the printer (other one did not).
2000-05-31 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru_extra.cc (TesselPrjnSpec): fixed MakeRectangle
to use ctr_x and ctr_y just as in MakeEllipse -- e.g.,
width/height = 3, ctr_x, _y = 0, gives send_off coords from -1 to
1 in both axes.
* src/bp/rbp.cc (RBpSequence): fixed sequence process to set
proper tick max using new safety features for detecting changed
enviro within a sequence.
* src/pdp/netstru.h (FixPrjnIndexes): added this function to fix
the other_idx indexes in con groups, which point to the
corresponding sending/receiving con group. These were not set
previously (in old projects), but are now checked for and if not
set, nothing can be run. So, you need to run this function on old
projects (avail in the Network actions menu).
* src/iv_graphic/graphic_text.cc (NoScale_Text_G): made the
right-mouse-button edit trick work for the view labels, propagated
this change through all the other descendants of noscale text.
* src/ta_misc/datagraph.cc: Graph Labels were not editable or
deletable due to new grasp select behavior. Added Select button
to graph log.
2000-05-30 Randall C. O'Reilly <[email protected]>
* src/ta_misc/win_base.cc: Whenever window is resized, it now
automatically stores the new window size! used to be you had to
specifically request that via script or get winpos, or by saving
the project. Now, windows will always remeber where they go!
2000-05-27 Randall C. O'Reilly <[email protected]>
* src/pdp/sched_proc.cc: added ChangeNameSuffix to SchedProcess --
call this to change all those numbers to something more meaninful
(e.g., Epoch_1 -> Epoch_Tst)
2000-05-26 Randall C. O'Reilly <[email protected]>
* src/ta/typea.cc (taMisc::FindFileInclude): locates given file
name anywhere within the include_paths -- returns full path to
file or an empty string if not found.
* src/ta/typea.h, ta_base.h: added Help to all objects -- this
simply looks up an HTML (or whatever) document, and runs the
taMisc::help_cmd on it. The help file is produced from the
taMisc::help_file_tmplt by replacing %t with the name of the type,
and parent types are searched until a match is found (or not).
Help files are searched for in the include_paths, which should
contain the appropriate default path (tmplt should have any
sub-paths off of these include paths, etg
manual/html/Help_%t.html). Once a valid file is located, the
taMisc::help_cmd is run with %s being the entire path to the help
file. Defaults are to use netscape:
String taMisc::help_file_tmplt = "manual/html/Help_%t.html";
String taMisc::help_cmd = "netscape -remote openURL\\(file:%s\\)";
* src/pdp/pdp_iv.cc: added ProjectView to the Project window --
displays all the major objects in the project, and shows links
between them. double-click to iconify or view an object, and you
can manipulate entire process object hierarchy -- create new
processes/stats, set aggregation type, change types of objects,
display aggregators, etc!
* src/ta/taiv_dialog.h: Added taivTypeDialog and taivEnumDialog as
two simple dialogs for grabbing a type or enum from the user.
2000-05-24 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.cc (NetView): prjn_arrow_angle = .6 and
prjn_arrow_size = 8 are new defaults.
* src/pdp/process.cc: set type = SCRIPT if script_string has
stuff in it.
2000-05-23 Randall C. O'Reilly <[email protected]>
* src/ta/taiv_data.cc: taivMenu::GetImage -- does not assign
current values to menu items that have actions (otherwise they
can't be selected -- was causing problem with over-max menu
selections)
* src/pdp/process.cc: closing a SchedProcess from Close menu (via
Close_Child) will cleanly remove it from the hierarchy (via either
super_proc->RemoveSubProc or sub_proc->RemoveSperProc). The
default behavior of removing everything underneath still occurs for
using the Remove function on the group.
* src/ta_misc/win_base.cc: closing an object using its
Close menu option now updates menus appropriately (via
Close_Child() in MenuGroup_impl).
* src/pdp/sched_proc.cc: added AddSuperProc, AddSubProc,
RemoveSuperProc, RemoveSubProc for SchedProcess, which will add or
remove processes into the hierarchy in a friendly way, preserving
the hierarchy and pointers and everything.
ChangeMyType on SchedProcess (via ReplacePointersHook) now updates
all the relevant pointers, so that you can change a schedule
process type within a hierarchy and everything will pretty much
work after that..
* src/pdp/netstru.cc: added CheckTypes() to all in netstru
hierarchy -- basically checks for valid specs in everything. this
code was in the Process::CheckNetwork, but it should be
freestanding within the netstru so it can be called from
InitWtState, which it now is!
* src/ta_misc/win_base.cc: do window->repair() instead of
window->resize() for Print_impl on WinBase -- no more resizing of
window to originally loaded size after printing!!
* src/ta_string/ta_string.h: added converters to/from long and
String.
* src/iv_graphic/graphic.cc: added canvas and viewer pointers to
the graphic master, which allow it to use a single constant canvas
when objects are dragged off-screen, instead of having them
migrate to other windows, which leaves everything a big mess.
2000-05-22 Randall C. O'Reilly <[email protected]>
* src/pdp/pdplog_iv.cc: hungrybox plus some fixes on
TextLogView::ShowMore and ShowLess prevent infinite loop hang on
textlogview resize.
* src/iv_misc/hungrybox.cc: removed potential infinite loop in
hungrybox reallocate -- a max of 4 iterations are now allowed.
2000-05-22 Randall C. O'Reilly <[email protected]>
* src/pdp/pdpshell.cc (PDPRoot): added Browse function on root to
allow random browsing of objects in the heirarchy using the new
object chooser. when an object is selected, it is edited. this
can also be called from the script to allow the user to select
objects at random.
2000-05-22 Randall C. O'Reilly <[email protected]>
* src/ta/taiv_data.cc: created taivObjChooser, for choosing
objects when over max menu, and for browsing through the object
heirarchy much like a file browser! all places where max menu
can be encountered are now fixed to use this chooser instead.
2000-05-20 Randall C. O'Reilly <[email protected]>
* src/pdp/sched_proc.h: all the init_, loop_, and final_* stuff is
now marked #DETAIL because there are menu-based ways of dealing
with this stuff (and the forthcoming project viewer).
* src/ta/taiv_dialog.cc: added a "Show" menu to edit dialogs,
which allows direct control over what is visible in the edit
dialog. if this is changed, then the edit window is closed and a
new one is opened with the items displayed. also added a new
level of display hiding: DETAIL, which can be used to hide fields
that are at a finer level of detail than most people would be
interested in.
* src/ta_misc/colorbar.cc: grey square in middle of pallette
on enviroview looked like zero, but wasn't. changed number of
blocks to 15, so now middle is genuine zero!
* src/pdp/net_iv.cc: fixed HGT_FIELD and HGT_PEAKS display in the
netview. they now accurately display a contiguous average-field
of values (height of each corner = average of neighboring values)
and the peaks accurately show the value of the unit as the height
of the peak.
2000-05-18 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.cc: much improved projection arrow pointing
algorithm -- always pairs off reciprocal (bidirectional)
connections with each other, and puts the arrows on the closest
side to the other layer. self projections are evenly distributed
across different sides.
2000-05-16 Randall C. O'Reilly <[email protected]>
* src/pdp/process.h: added ReplaceEnvPtrs function which replaces
all environment pointers (used as hook when environment type is
changed).
* src/pdp/netstru.h: added ReplaceUnitSpec, ConSpec, PrjnSpec,
LayerSpec functions at relevant levels of the structure which
change any pointers to one spec to a new one. These are then
called whenever a spec has ChangeMyType called on it, so that
the network automatically gets the new types.
* src/ta/ta_base.h: added DuplicateMe() function to taBase -- just
calls DuplicateEL() on itself from its owner if owner is a
taList_impl object (list or group).
- added ChangeMyType(TypeDef* new_type) which changes the type of
this object to the new type (which must either be a base or a
parent of this type) -- very useful for specs and environments
when you want to use a new type but have everything else be the
same. it automatically copies previous values into new object
type. calls ChangeType on parent.
- taList_impl: added ChangeType(itm, new_type) which actually does
type changing operation, and eplaceType(old_type, new_type) which
uses ChangeType to replace any instance of a given type to the new
type.
* Makefile (re_all): this target will reliably redo everything
after major changes to headerfiles across several subdirs.
2000-05-15 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.h: right-mouse-button click on layer name
immediately pulls up editor for name.
* src/pdp/netstru.h (Network): cut Network::pos field -- was never
being used.
* src/pdp/netstru.cc: all objects displayed in netview (Unit,
Layer, Projection) now will update the view as they are removed
(even by external means, not by selecting and removing in netview
itself). to prevent update after removing each unit, set
unt.pos.z = -1 (and then update later).
* src/pdp/net_iv.cc: netview now always rescales to fit in display
when resized, or opened.
- scrollbar for network variables is now updated when variable
count changes.
- connection-based variables (e.g., r.wt, s.wt) are now located at
the *top* of the list of variables. this works better for
situations where there are a relatively large number of variables
on the unit -- put the less important unit variables at the end,
and they will be at the bottom of the scrollbox of variables, but
it will be easy to switch back and forth between act and r.wt.
2000-05-14 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.cc: netview now renders text directly instead of
making extra graphic objects -- much more efficient and simpler on
the code. got rid of UnitBlock and UnitText -- Unit_G just
contains one or more UnitValue_G's.
2000-05-13 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro_iv.cc: now rendering value/label text in
enviroview directly, not creating objects for it -- much more
efficient. also, fixed layout so event label text is never
overwritten between events (use a constant pixel-wise spacing).
2000-05-12 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.h: Added GridViewWeights functions that send
entire matrix of weights to grid log view for viewing, with
optional constraints on the size of the grids (-1 = full size of
layer). Functions are avail at all levels from Projection to
Layer to Network.
* src/pdp/enviro.h (Environment): Added DistMatrixGrid, sends
distance matrix directly to a grid log for immediate viewing.
also added EnvToGrid, sends on pattern from all events in
environment to grid for viewing (useful for when enviro has
intermediate results that you just want to view -- more
cleanly displayed in gridlog).
* src/pdp/netstru.h: Moved CopyWeights, WriteWeights, ReadWeights
to the Object menu instead of the Actions menu -- all basic I/O
should be in the Object menu.
* src/ta/typea.cc (taMisc): moved FormatValue from enviro to
taMisc so it is generally available. formats output of a float
value according to specified width and precision restrictions.
2000-05-11 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.cc: in netview, nothing except the units are
pickable! this should greatly minimize the confusion between
select and pick -- you just can't pick most things you'd want to
select!
* src/pdp/enviro_iv.cc: in enviroview, the event, eventbox is not
graspable so it does not get selected during a move -- you go
straight to the patterns. also, selectable is conditional on
right-mouse-button, so that if you click rmb, you get straight to
the text to edit!
* src/ta_misc/datatable_iv.cc,h: in gridlog -- the overall
dataline container is not selectable or graspable, so control goes
immediately to the relevant sub-objects.
* src/iv_graphic/graphic.cc: added selectable(), pickable(), and
graspable() functions on the Graphic, which default return true,
but can be changed to make particular objects non *able.
2000-05-11 Randall C. O'Reilly <[email protected]>
* src/ta_misc/datatable_iv.h,.cc, /pdp/pdplog_iv.cc: massive
rewrite of gridlogview to Graphic-based system. addresses
following problems with original:
gridlog: convert into an ivGraphic based display, with
support for moving things around interactively, configuring, etc.
make it much easier to use! and might solve following problems.
in new gridlog, make sure grid data is rendered from *one
Graphic* object per array, not one per little square. this
will make things *much* more efficient!! same comment goes for
the enviroview.
gridlog can crash if you switch to/from text/block while
data is currently being displayed. this is hard to
fix. workaround is to clear display first!
GridLog: crashes upon UpdateLayout for output of DistMatrix
GRID_LOG format (more generally anything with only one
subgroup of values). also random crashes..
gridlogview: toggle to turn off grid headers.
- move all scaling control code to datatable_iv using new scale_on field
- parse GEOM settings in datatable to set geometry of grid log!
* src/pdp/net_iv*, enviro_iv*: why does the *Editor inherit from
an ivPatch? it is now just a standalone base type and it is deleted
when done.
2000-05-09 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.h (Con_Group): Con group cannot be a
#ARRAY_ALLOC group because this is not the right thing to do for
sending connections, and you can't even find out if they are
linked or not because they don't have an owner field!! So, took
this off -- was causing crashes upon reloading saved networks..
2000-05-07 Randall C. O'Reilly <[email protected]>
* src/css/css_builtin.cc: added ws, flush, endl, ends, dec, hex,
oct, lock, and unlock stream functions -- just hacked it into the
the << and >> (lshift, rshift) code to look for a stream and a
bool with a particular name (shouldn't be outputting too many
bools so this shouldn't be too bad performance-wise).
* src/pdp/enviro.cc (Environment): changed ReadOldPDP and
WriteOldPDP to ReadText and WriteText, and completely rewrote so
that they now work! You now have to specify the format upon
reading, so it can *expect* an event name instead of trying to
infer it. The # endgroup comment is superfluous and has been
eliminated (it will just be ignored like any other comment), and
the write routine now properly writes out # startgroup comments to
preserve group structure. the EventSpec itself must be passed to
the read routine. Also, added a WriteBinary routine that writes a
binary file that can be read by ReadBinary.
2000-05-05 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro.cc, enviro_iv.cc: added lots of calls to
UpdateChildren when patternspecs are modified, and update calls in
the graphic interface so that child specs are completely updated.
also, added the EnforceSameStru call on the patterns so that when
a new patternspec is added or one is removed, the children are
updated (and all the types are enforced to be the same too).
* src/ta/ta_base.h: got rid of all the Array-support code in the
taList_impl class (status, etc) -- this turns not to be useful,
and should be put into a separate class, not piggybacked onto the
standard ptrlist one.
added EnforceSameStru(cp) -- ensures that this list has same structure
(size, types) as the list passed as an argument (cp). does not copy though.
* src/pdp/sched_proc.cc: added calls to UnSetLayers (see below) in
epoch initialization.
(SettleProcess::InitLinks) settle process now looks for any
cycletosettle in the trialprocess and sets its settle pointer to
this process, which might have just been created, but couldn't
find the settle process because it didn't exist then (trial
process gets created first).
* src/pdp/enviro.cc (Enviroment::UnSetLayers): added this global
call to reset the patternspec layer pointers so they will
automatically be recomputed, in case things have changed, the next
time patterns are presented.
2000-05-04 Randall C. O'Reilly <[email protected]>
* src/pdp/pdplog.h (GraphLogView): removed x_axis_mode (see
below). this will cause an error in loading complaining about
the missing variable, but it should just be ignored.
* src/ta_misc/datagraph.cc: graph labels (while scanning values)
are now printed in black (contrasting color with the background).
also removed x_axis_mode from the graph -- other modes did not
work anyway.
fixed the bug where you couldn't have a graph axis pointing to
another axis that was later in the list -- this is ok now
(introduced 2 passes into the GraphEditor::GetAxis function)
* src/ta/ta_base_tmplt.h, ta_list_tmplt.h: added RevEl (reverse
element) to all array templates, and FillSeq(start, inc) to
int_Array, making it easy to initialize an array with a sequence
of values (defaults start at 0, inc by 1)
* src/ta/ta_list.cc (CopyVals): fixed CopyVals, which had an
errant EnforceSize call that shrunk the array -- now it is only
called if the current size is too small!
2000-05-03 Randall C. O'Reilly <[email protected]>
* src/ta/ta_base.h
(taBase::UnSafeCopy,CastCopyTo,CopyTo,CopyFrom): added capability
to copy from objects that this inherits from, which is done by
casting ourselves down to that more basic class, and then doing
copy (this is what CastCopyTo does). Also added a CopyTo function
which can be called on a more basic class to copy to a derived
class -- the base class doesn't show up in the CopyFrom menu,
which only lists derivatives of it. However, in the script or
elsewhere, CopyFrom can be called with more basic classes and will
do the right thing.
2000-05-03 Randall C. O'Reilly <[email protected]>
* src/pdp/sched_proc.cc (EpochProcess, SequenceProcess,
SequenceEpoch): do checking in GetCurEvent to ensure that current
environment still has same size -- if not, get new list of events.
makes things more robust if environment gets changed within an
epoch.
SequenceEpoch will now use events as cur_event_gp if there are no
subgroups -- this means that it will still work with a flat
environment, unlike before (where you *had* to have subgroups to
do sequence epoch). However it still won't use top-level events
if you also have subgroups.
* src/pdp/netstru.cc (Unit::ConnectFrom): added code to set
other_idx if it was currently not being set (needed for when you
make custom connections between units -- otherwise you get a crash).
* src/iv_graphic/graphic.cc (effect): removed target->flush() call
that was causing text to dissappear when event objects were moved,
etc.
* src/iv_graphic/graphic_viewer.cc (GlyphViewer): major
improvement in the manipulation (moving, resizing, etc) of Graphic
objects (in NetView, EnviroView, etc): 1) the currently selected
object (if any) is the one that is manipulated. 2) if no
manipulation is done, then the next object in the selection
sequence (e.g., first layers, then unit-groups, then units for
network) is selected, and would be manipulated upon subsequent
mouse-down & move events.
* src/ta_misc/tdgeometry.h: Initialize functions for 3-d geometry
were not resetting 2-d geometry components. This was causing the
annoying "memory" in the moving of objects in the views.
2000-05-01 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro.cc, pdpshell.cc (ClusterPlot): the clusterplot
function now takes a GraphLog* arg (NULL = make a new one) and
uses GraphData calls to generate a cluster plot in that graph log!
XGraph is no longer required!
* src/ta_misc/datatable.h (ClustNode::GraphData): new function
that sends cluster graph data directly to a DataTable (which is
initialized properly by this function), for the purposes of
displaying the clusterplot in the graphlog.
* src/ta_misc/datagraph.cc: graph can now plot strings! it uses
the float_Data immediately before the String_Data to get the y
values, and the String_Data must have DISP_STRING as a
disp_option. this is basically tailored for doing a cluster plot,
but could be used for other things (e.g., adding symbols to a line
or some thing like that). blank strings are not printed.
2000-04-30 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru_extra.cc: changed all appropriate ConnectFrom
calls to the Ck versions.
* src/pdp/netstru.h,.cc (Unit::ConnectFromCk, ConnectFromLinkCk):
created new versions of these connection functions that check
first if a connection already exists from the sending unit --
these versions should always be used if there is any possibility
of forming double connections. returns NULL if connection already
exists.
* src/pdp/process.cc (CtrlPanelData::SetWinPos): added code to
ensure that process control panels are always visible on the
screen.
* src/pdp/stats.h (Stat): made loop_init flag visible so it can be
changed in the interface.
* src/pdp/pdpshell.h,.cc, src/ta/typea.h,.cc: changed version to
version_no to avoid conflicts with other definitions of this
variable type (on SUN and SGI systems, apparently).
2000-04-29 Randall C. O'Reilly <[email protected]>
* src/pdp/sched_proc.cc (SchedProcess::NewInit, ReInit): moved
CheckAllTypes up in the sequence so any NULL problems are found
before things like reiniting the network weights happen..
* src/pdp/netstru.cc: added several NULL checks on specs during
ReConnect_Load, because the only way to get a null spec pointer is
to do it during loading -- this should identify these problems
w/out crashing.
* src/leabra/leabra.cc (LeabraSE_Stat): replaced LeabraAeSE_Stat
with LeabraSE_Stat (original still defined as subclass for
backwards compatibilty) -- just makes life a little simpler namewise.
2000-04-28 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro_iv.cc (Pattern_G): no value edit is made with
right-mouse-button, so that this doesn't happen accidentally when
trying to edit the layer's name. middle mouse button now will
revert the value to the previous value, in case you change the
wrong thing.
* src/ta_misc/win_base.h (WinMgr): got rid of view:: submenu
(i.e., #IN_GPMENU) from all objects having views (nets, enviros,
etc). This submenu was only ever causing confusion, and now it is
gone!!
2000-04-27 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.cc (NetView): fixed the evil blank netview
screen -- problem was that the net xform was not correctly updated
if no InitDisplay is ever pressed in between loading and saving
the project. added a GetNetXform() before Dump_Save_Value to
ensure that the most recent xform is obtained..
2000-04-24 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.cc, .h, netstru.cc,.h (NetViewGraphic,_G): fixed
included graphics: transformations are now correctly saved and
loaded upon startup, they don't crash, and are removed correctly.
furthermore, they can be selectively removed by selecting an
individual graphic.
2000-04-10 Randall C. O'Reilly <[email protected]>
* src/pdp/enviro_iv.cc: fixed event removal function to be *much*
faster -- was doing an InitDisplay (via UnDisplayEvent) after
every event removal! Now only does that if the event is actually
being displayed.
2000-02-18 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru.cc (UnitSpec): unit specs do not set their bias
spec pointers *at all* when loading until the update-after-edit.
this eliminates dependencies in the load order of the specs! if
not during loading, then specs are set right away, to presumably
the correct type.
2000-02-17 Randall C. O'Reilly <[email protected]>
* Set current version to 2.0a (alpha) to preserve all the old code
that was trashed in rewriting the enviroview, and that will be
trashed in writing the new gridlogview.
* src/pdp/net_iv.cc: cleaned up the layout of the code for
NetEditor and eliminated the large number of redundant "update"
and "init" functions.
- default layer movement is now in the X,Z plane for THREE_D
layout nets! use right mouse button to achieve X,Y movement
- auto-Init function for moving or reshaping layers!! this is
borrowed from the new enviroview.
2000-02-16 Randall C. O'Reilly <[email protected]>
* src/pdp/net_iv.h,cc: added a "display mode" menu on the right
side of the window, allowing you to select the display ("shape")
of unit value info.
* src/ta/taiv_data.cc: changed the script recording so that it
does not record script info for objects that do not have an owner.
* src/pdp/enviro.h,cc,enviro_iv.cc,h (EnviroView): major overhaul
of EnviroView: now implemented in the Graphic framework used for
the NetView. There is an "Edit Events" and "Edit Specs" button
that switches between these two modes of editing.
- Specs can be fully edited within the window, including resizing
and moving.
- right mouse button pulls up an edit dialog for any text object.
- the little dark square in spec edit indicates the number of
values -- it can be moved to change this setting.
- both value text and labels can be selected as in the netview.
- the same display modes as before (color, area, linear).
- much more efficient, can view huge patterns (might want to turn
off the border for the elements, using no_border flag)
- fonts can be customized in the EnviroView edit.
- layout is automatically optimized for the display size -- no
need to set the pad size (projects will complain about these
missing parameters upon loading -- don't worry).
- Also added a SetToLayer function on PatternSpec and via the edit
spec window -- this sets the patternspec to fit the selected
layer. This should generally be the first step in setting up a
new layer.
- This should fix some mysterious crashing associated with the
previous implementation, which was unwieldy and buggy..
2000-01-12 Randall C. O'Reilly <[email protected]>
* src/pdp/procs_extra.cc (ClosestEventStat): got rid of net_agg in
stat val names (min) -- not relevant.
2000-01-11 Randall C. O'Reilly <[email protected]>
* src/pdp/netstru_extra.cc (TesselPrjnSpec): added warning
messages for conditions that don't work (recv_skip for linked
units/groups, !wrap & init_wts).
2000-01-08 Randall C. O'Reilly <[email protected]>
* src/pdp/pdplog.h (PDPLog): added no_dlg options to all log file
commands to specify that no file dialog should be opened.
* src/ta_misc/ta_file.h (taFile): added no_dlg options to all
commands to specify that no file dialog should be opened.
* src/ta/taiv_data.h (taivGetFile): added no_dlg options to all
commands to specify that no file dialog should be opened.
2000-01-02 Randall C. O'Reilly <[email protected]>
* src/leabra: added leabra algorithm as one of the basic
algorithms in the pdp++ directory. see header file
(src/leabra/leabra.h) and upcoming textbook O'Reilly & Munakata,
2000, "Computational Explorations in Cognitive Neuroscience",
Cambridge, MA: MIT Press for details.
2000-01-01 Randall C. O'Reilly <[email protected]>
* src/ta/taiv_dialog.cc (taivDialog): added no_ok_but for not
having an OK button on an edit dialog. also parse NO_OK and
NO_CANCEL object options in css and compiled.
Fixed non-responsive dialog bug!! Somehow the owner dialog was
losing the focus on the subservient DialogInputHandler, so now
we just always focus on it whenver we get a key input!
* src/pdp/process.cc (Process::ControlPanel): now takes optinal
args to locate the control panel.
* src/ta/taiv_data.h (taivMisc::FlushIVPending): added function to
flush all pending events, running multple RunIVPending and then
waiting for a second and then runing more.
* src/ta_misc/win_base.h (WinBase::ViewWindow): added function to
either de-iconify and raise an existing window, or open a new one
if none exists. also takes args to locate/size the new window.
1999-08-25 Randall C. O'Reilly <[email protected]>
* src/ta/maketa.cc,typea.cc: changed default tmp file directory to
/tmp instead of /usr/tmp -- debian linux doesn't apparently have
/usr/tmp, and /tmp is more standard.
1999-06-08 Randall C. O'Reilly <[email protected]>
* src/pdp/spec.cc (BaseSpec::UpdateMember): specs now do
EnforceSize based on parent for lists and arrays -- this was not
happening before!
1999-05-18 Randall C. O'Reilly <[email protected]>
* src/pdp/procs_extra.cc (MultiEnvProcess): fixed so that
UpdateAfterEdit always gets current environment, prevents getting
overwritten from some higher-level process (e.g., during stepping)!
1999-04-07 Randall C. O'Reilly <[email protected]>
* config/Makefile.SUN4solaris: makefile configured for compiling
under SunOS 5.6 using their standard CC compiler.
* config/Makefile.std,.def: arguments for making dependencies made
into a modifyiable flag (DEP_FLAG).
* numerous fixes of cases where local vars clash with member
variables (found by solaris compiler).
1999-02-08 Randall C. O'Reilly <[email protected]>