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
|
================
VDKBuilder 2.0.0
================
* Porting to Gtk+ 2.0.0
* Redesigned interface
* New project wizard
* New source editor based on GtkTextView
* Class browser
* More new widgets support
* More plugins
* Many minor bug fixes
* Finally a VDK/VDKBuilder tutorial
================
VDKBuilder 1.2.5
================
* Bug fix that makes now builder handling horizontal
radio button group correctly.
* Added an hints editor, now users can add/remove/change their own
editor hints
* Implemented a projects-reopen feature based on a lru algorithm.
User can reopen last recently used projects (up to 10)
* Many minor bug fixes and enhancements.
================
VDKBuilder 1.2.4
================
* Added translation to french to nls support.
---
IDE
---
* Enhanced widgets moving/resizing with mouse into VDKFixed container.
* If Form has a pixmap as background, this is set using
a VDKRawPixmap* as form data member (private) named: _backpix.
* Implemented Native Language Support (NLS)
VDKBuilder supports now NLS. In a limited way however
since it takes care to write the code to support NLS
on gui files side only (thus those files that are
overwritten by builder and out of user control).
The remaining part of the NLS stuff is under user
responsibility that must write his own code to support
NSL and take care of use gettextize, editing configure.in,
aclocal.m4, POTFILES.in, po.* files and other necessary
activities.
At this end if the user try to autogen more than once (most
likely) he/she will be prompted if want save configure.in,
Makefile.am and acconfig.h as configure.in.old, Makefile.am.old
and acconfig.h.old since they will be overwritten by builder
and he/she could loose the previous written NLS instructions
into those files.
User can use configure.in.old,Makefile.am.old and acconfig.h.old
to restore NLS instructions on newly written configure.in,
Makefile.am and acconfig.h
To help new users a short tutorial in how to build a nls application
with builder can be found into example/nls_HOWTO.
* About form revisited and (hopefully) made more pleasant.
----------
GUI Editor
----------
* Now vdkbuilder uses modified version of gtkextext as vdkb editor base.
Modified version stolen from glimmer <http://glimmer.sourceforge.net>,
modified gtkextext seems to be faster, more stable and with some extra
features.
* Added auto indent capability (user customizable with environment
dialog). Hitting enter key triggers code indenting.
* Added show/hide line numbers (user customizable),this option
operates for all code editors.
================
VDKBuilder 1.2.3
================
---
IDE
---
* Adding an argument to command line:
$ vdkb <file.prj>
will run vdkbuilder on file.prj
Gnome and KDE users can set MIME-type:
Mime Type: application/vdkbuilder
Extensions: .prj
Mime type actions: vdkb %f
* Automake/autoconf support.
If a file named am_include.am exists, am_include.am is appended to
EXTRA_DIST, and the contents of the file are copied verbatim to the end
of Makefile.am.
am_include.am can be used for automake features not yet supported
directly
* VDKBuilder maker modified to be runned either modal or non-modal
during application run.
User can customize this behaviour using VDKBuilder environment dialog.
NOTE: Some user may experience "X Server async replay" error during
non-modal runs. In such cases reset "run-modal" option
* Emacs supported as external editor using emacs-server
and emacs-clients. When emacs server is called all text-edit requests
made on builder are forwarded to emacs via an emacs-client.
However internal builder editor is mantained in background
and wakes up as emacs server is terminated.
To run emacs click on GNU icon on main form toolbar.
GNU icon will became visible checking the emacs checkbox
on environment dialog at "Miscellanous page".
(VDKBuilder must be rerunned to make the change effective).
As emacs lovers knows almost all activities besides editing
can be done from within emacs (except gui editing of course).
- To compile:
<alt-x>
compile <cr>
make -f vdkbMakefile
- To execute application:
<alt-x>
compile <cr>
make -f vdkbMakefile run
- To clean:
<alt-x>
compile <cr>
make -f vdkbMakefile clean
- To debug with gnu-gdb
<alt-x>
gdb <cr>
gdb ./your-app
- For those that use automake/autoconf support emacs can compile
makefile in the usual way:
<alt-x>
compile <cr>
make
--------------------
Building environment
--------------------
* ./configure now generates vdkbuilder.spec
redhat user can install vdkbuilder with:
rpm -at vdkbuilder-1.2.3.tar.gz
* Added a vdkb.png icon that is installed into:
<prefix>/share/pixmaps and can be used as program icon
in desktops and wm's.
* Changed app icon to vdkb.xpm
Note: this icon is displayed when builder is minimized but
not all wm's allows it.
(Should work on gnome-compliant wm's such as enlightnment,
sawfish,windowmaker)
* Changed configure.in to check for libvdkxdb-0.0.4
to decide if support xdb or not.
User that had libvdkxdb-0.0.2 should upgrade to 0.0.4
to continue having xdb support.
libvdkxdb-0.0.4 should be installed before vdkbuilder.
----------
GUI Editor
----------
* Pixmap data can be set also using a symbol besides file name.
In such way pixmap data are hard-coded into executable rather
than be loaded from a file at run-time.
This affects:
VDKPixmap, VDKCustomButtom, VDKToolbar and VDKMenuItem.
Setting pixmap data is achieved with a checkbox into WI.
The file containing pixmap data must be used however, it will
be included into source code rather than loaded at run time.
Pixmap data symbol name (char**) are made from standard
xpm file header in this way:
Filename: pixmap.xpm
Data symbol name: char** pixmap_xpm;
If file name contains chars as : - or . they are converted into
_ (underscore):
Filename: pixmap-file.xpm
Data symbol name: char** pixmap_file_xpm;
Note:
While setting pixmaps by data on VDKPixmap, VDKCustomButtom,
VDKMenuItem is made on a widget basis, in VDKToolbar affects all
buttons contained into toolbar.
* Multiple drops of equal widgets without having to reselect
the widget all the times:
- Select a widget from palette
- shift-click on gui editor (cursor will became a diamond cross,
different from the hair cross showed for a single drop)
- following shift-clicks will continue to drop an equal widget.
Resetting from multiple drops can be done in two ways:
- drop last one with a simple click
- click on "reset selection" icon on main form toolbar.
* Now widgets can be declared "public" using a checkbox
into WI.
* Now is possible set widgets minimum size also
with keyboard besides using right click pop menu.
- Select the widget:
<ctrl-down> increment v size
<ctrl-up> decrement v size
<ctrl-right> increment h size
<ctrl-left> decrement v size
Moreover a little tip window will show you widget
dimensions.
================
VDKBuilder 1.2.2
================
* VDKBuilder text editor
Added:
- word completion and code templates
- brackets matching
- hints
- code indenting
- support for foreign characters
* Word completion and code templates
Pressing <ctrl-tab> with the text cursor over a partially
written word will complete that word if this is known.
For most common c/c++ syntax structures such as
for, if, while and do, completion will write
an empty structure template.
If there are more than one completion possibility they
will be listed into a tip window that will disappear at
first keystroke.
If the word isn't into completion list it can be
added pressing <ctrl-a>, an user modified completion list
will be prompted to be saved at session end. Default
completion list file contains a few most used c/c++ key
words, in this way user can easily expand them adding
their own words. Each user has his own completion list file at:
$(HOME)/.vdkb/res/tokens.db
* Bracket matching
Added ala Emacs bracket matching for () and {}
Inserting a closing ')' or '}' shows the match with
the proper nested '(' or '{'.
If the matching bracket isn't visible a tip window with matching
informations is showed. If a match isn't found a user warning
is showed as well.
Same effect can be achieved pressing <ctrl-p> with
the text cursor immediately before a ')' or '}'.
* Hints
Pressing <ctrl-q> with the text pointer over a word
will display a tip window containing hints on that word.
Tip window will disappear at first keystroke.
Hints file contains most common used vdk class members,
generally calling an hint over a class function member
will display a full function prototype.
Hints file isn't complete however, will be completed on next
versions.
User can customize the file <prefix>/share/vdkb/res/cpphints
adding or removing hints. (See cpphints file to see how
to format key and text, be careful however since file
parser isn't protected against errors nor syntax check is
performed, generally a bad formatted hint section will break
parsing operations)
Hints should be formatted as follow:
HINT{
KEY[put here the keyword]
TEXT[put here hint text]
}
* Code indenting
Pressing <tab> will indent code. Indenting logic is naive
since it follows only nested bracket matching plus
syntax keywords or syntax constructs if they are contained
into the previous line.
Code will be indented at nearest nested "{" or keyword plus user
defined tab spaces.
Unsatisfied user can disable code indenting setting
"code indenting" to false on environment options at
"miscellaneous" page, in this case indenting revert to
normal indenting where entire line is shifted to the next
tab stop computed as a multiple of user set tab spaces.
Anyhow <shift+tab> will override indenting and behave as
a normal tab.
I hope indenting logic will be smarter and more complete in
future versions.
* Support for foreign characters
Keystrokes combination: <alt + num key pad> permits
to insert foreign chars into editor.
For instance pressing <alt> + 169 (into num key pad)
and releasing <alt> inserts copyright symbol into editor.
Those windoze guys that were used to <alt + 123>, <alt + 125>
to insert left-rights braces will appreciate this feature.
Should be useful too for those non-english guys that want insert
some odd char that their keyboard does not support.
* VDKBuilder environment
Added a save-restore session capability.
Last session is saved on $(HOME)/.vdkb/res/last.session,
next run will restore things (opened project, forms, editors etc.)
Unfortunately restoring text cursor position didn't succeed :-(
Save/restore last session can be disabled/enabled using environment
dialog (Miscellaneous things)
* Minor fixes and enhancements.
See ChangeLog
================
VDKBuilder 1.2.1
================
* VDKBuilder now supports vdkxdb, a set of classes and
data-aware widgets made to build light-weight database
applications. (See INSTALL file)
* Minor bug fixes and enhancements(See ChangeLog)
================
VDKBuilder 1.2.0
================
* New much faster in syntax highlighting and more stable
text editor. Thanks to Mikael Hermansson <mikeh@bahnhof.se>
and his clever gtkextext widget.
* Native Language Support implemented for
- en English
- it Italian
- de German
* VDK class reference accessible from vdkbuilder help.
* Users that have enabled gnome-support on vdk can use
gnome help support to browse class reference manual.
* Many improuvements and bug fixes (See Changelog)
================
VDKBuilder 1.0.6
================
* No changes
================
VDKBuilder 1.0.5
================
* No changes
================
VDKBuilder 1.0.4
================
* Added gnome support:
- VDKGnomeApplication
- VDKGnomeForm
- VDKGnomeAppBar
- VDKGNomeDateEdit
- VDKGnomeEntry
* Application wizard modified to support gnome-compliant applications.
* Putting "@sep" into a menu item caption makes it a "separator"
================
VDKBuilder 1.0.3
================
* Better designed WI and gui editor
- another look and feel using both containers and widget icons
- added cut/copy & paste capability (see below)
- added dnd support (see below)
* Gui editor:
Added drag and drop features for dropping widgets.
Now user can drag widgets from tool palette and
drop them directly on the gui editor.
* WI/Gui editor:
Added enhanced cut/copy & paste capability to gui editor and WI
Widgets can be cutted and pasted into another container.
Cut/copy & paste can be done on gui editor using pop menu
on selected widget (right click) or using pop menu on WI,
or using speedbar on the WI top.
Cut/copied widgets are placed into a clipboard stack,
user can paste last cut widget or choose
one or more from the clipboard stack.
Widget pop-menu (both on gui editor and WI)
have these menu items:
"Copy" enabled on selected widget (not for containers)
"Cut" enabled on selected widget
"Paste" enabled on stack top widget
"Paste others.." enabled when clipboard stack contains
more than one widget.
- Key accelerators can be used in gui editor:
Ctrl+x cut a widget
Ctrl+c copy an widget
Ctrl+v paste the stack top widget
- Some limitations holds:
* cut and paste is allowed only into
the same form, pasting between different forms
is denied.
* Cut & paste isn't available for menus handling.
* containers can't be copied
* Added dnd support to WI, dragging an widget-node into a
a container-node achieves same effect as cut/paste.
However some buggy behaviour remains:
dragging a node-widget into a node-container that has another
node-container nested (as first node) makes the dragged widget
dropped into innermost node-containe
* VDKBuilders use placeholders to fill an empty box
before user drops an widget.
When an user drops an widget into a box the
placeholder is taken away and substitued with the user
dropped widget. Now this placeholders are marked with
light grey dashed lines for better visibility until
they remain empty.
* Now builder autonomously writes both signal list and
event list (dynamic tables) declaration and definition
in <project>_gui.h and <project>_gui.cc.
** WARNING ** this is s possible code break with already
existent user projects.
Users should delete their own declarations.
* All widget caption entries now react to enter key as well.
* Debugger: now when user changes "debugger" field
debugger executable is checked in default
paths, if not found warns user and let
"debugger" field blank.
* Improuved menus handling:
added some more functionalities:
- appending
- prepending
- inserting to a position
menu items into a menubar or a menu.
================
VDKBuilder 1.0.2
================
* editor: added an undo undo key, now you can use also <alt-backspace>
* added realize_signal to WI signals map.
================
VDKBuilder 1.0.0
================
* Upgraded to vdk 0.6.7 and gtk+ 1.2.5-pre2
* Improuved syntax colouring
* Added plugin capability. Now users can plug into
builder their own components without recompile it.
* New customizable environment flags:
- timed auto saving of text files
- auto back-up of text files
* Improuved VDKBuilder maker
* New redesigned and improuved project wizard
* New examples and tutorials (see ChangeLog)
================
VDKBuilder 0.1.6
================
* upgraded vdkbuilder to gcc 2.95.1
* Enabled menu item "View => View Forms" and "View Forms" icon.
It opens a form that lists all project forms
and allow to edit them.
Useful when the screen is crowded.
* Now vdkbuilder denies to run more
than one instance per user.
At start vdkbuilder looks for a lock file:
$(HOME)/.vdkb/.vdkblock
(Uses a similar alghoritm as netscape)
================
VDKBuilder 0.1.5
================
This release is mainly a bug-fix one and contains
some additional features:
* added VDKFixed support
Moving/resizing widget contained into a fixed
with mouse and keyboard implemented.
* two more tutorial steps
================
VDKBuilder 0.1.4
================
* Added a cacapbility that writes header dependencies
(not recursive) for source files into
vdkbMakefile. Dependencies are valid only for those
files in project dir.Added:
* Added a xpm browser to set glyphs on various widgets:
pixamp buttons, toolbars, menuitems.
VDKXpmBrowser was derived from VDKFileDialog, is simple and
naive too.
* Added a grep capability under Tools menu.
Grep results are loaded into editor message list,
double clicking on a list item will jump to
matched line.
(A little bug, selecting just one file prevents
jump capability, it depends on how grep utility outputs
results).
* Added help/tutorial system (incomplete)
Help/Tutorial uses the great Mozilla that can be invoked
from within builder with Help->Index menu.
Again thanks to:
Jonathan Hudson <jonathan.hudson@jrhudson.demon.co.uk>
* At first start VDKBuilder autonomously installs
vdkbide.defaults and vdkbrc files into
<home>/.vdkb/res
* Enabled toggle form/unit on main tool bar.
- Activating a VDKBEditor page and cliking on
form/unit toggle button the related form editor will be
activated and raised.
- Otherwise activating a form editor and clicking
on form/unit toggle button the related text editor
will be activated and raised.
Very useful when screen becomes crowded.
* Added autoconf/automake support
Requires:
- autoconf version >= 2.13
- automake (GNU automake) >= 1.4
This capability makes some assumptions:
a. all project files are into project dir.
b. if the user wants add some extra files
it should prepare an <extra_dist.am> file.
These files will be added to distribution.
(useful for pixmaps, docs, etc.)
The <extra_dist.am> file should contains a file list,
each one separated by a new-line.
* Supported configure commands:
./configure [various options]
./configure --help
* Supported make targets:
make
make clean
make distclean
make dist
make install
* For redhat users (and most probably for others)
If automake/autoconf support fails with:
"AM_PATH_VDK macro not found on aclocal library"
make a symlink into /usr/share/aclocal/
to /usr/local/share/aclocal/vdk.m4
Like this:
$ su
Password:
(have su permission)
# cd /usr/share/aclocal
# ln -s /usr/local/share/aclocal/vdk.m4
# exit
$
================
VDKBuilder 0.1.3
================
* Added support for:
- VDKStatusbar
- VDKSLider
- VDKGrid
not very complete, users should hack
on vdkcompo/vdkgrid.h and vdkcompo/gtksheet.h
Also use vdkgrid example on vdktest
- VDKPacker
- Accelerators (VDKBMenuItem and VDKBCustomButton).
- Widgtes place holders
Place holder is a widget that hold place for those
widget that aren't currently supported by builder
or are user defined.
User should supply constructor definition for
widget that will replace place holder.
Builder declares and construct "real" widget
using user supplied constructor definition.
User can set common widget properties such as
color,fonts,visible etc. Other behaviours
must be coded by user.
The right place is in YourForm::Setup()
* Editor no more constructed at start-up.
It will be displayed when opening a project.
* Changed (WITH CODE BREAK)
Changed all _Padding,_Fill,_Expand
properties from a bool value to int.
Also _justify changed from literals to int
l_justify = 0
c_justify = 1
r_justify = 2
This can break compatibility with previous .frm files.
Users should manually change in their .frm files
all above properties from true/false to 1/0
i.e. (from vdkbuilder/example/hello)
[object]
{
this:Hbox2;
class:VDKBox;
parent:nihil;
_justify:l_justify; <== change to 1
_Expand:true; <== change to 1
_Fill:true; <== change to 1
_Padding:true; <== change to 1
Tag:nihil;
Usize:239,78;
mode:h_box;
BorderWidth:1;
}
NOTE:
This break was necessary to properly support a new
useful widget: VDKPacker.
================
VDKBuilder 0.1.2
================
* Added support for VDKCustomButton
* Better colors selection
* More customizing parameters:
- autosave:
when autosave is set to "yes" (into vdkbide.defaults)
changed files (both .frm and .cc/.h) are saved without
ask to user
- startup dir:
user can customize starting up working dir
* Enabled customizing environment with dialog
* Enabled project manager to manage console application
projects. (Console applications do not use any
gui features)
================
VDKBuilder 0.1.1
================
Automake/Autoconf support
|