Commit Graph

45 Commits

Author SHA1 Message Date
Pritpal Bedi
4618f04be4 2010-06-18 18:14 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/ideenviron.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idefunctions.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideshortcuts.prg
  * contrib/hbide/idesources.prg
  * contrib/hbide/idetools.prg
    + Remodelled: ::aINI - hbide.ini variables container.
      It is now encapsulated in a object - ::aINI => ::oINI.
      This implementation has made this construct extendible to 
      any extent. Earlier it was a real mess to add one more 
      option on top of the existing one.
2010-06-19 01:17:42 +00:00
Pritpal Bedi
4809712e1b 2010-06-06 02:43 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
+ contrib/hbide/resources/go-bottom.png
  + contrib/hbide/resources/go-down.png
  + contrib/hbide/resources/go-first.png
  + contrib/hbide/resources/go-jump.png
  + contrib/hbide/resources/go-last.png
  + contrib/hbide/resources/go-next.png
  + contrib/hbide/resources/go-prev.png
  + contrib/hbide/resources/go-top.png
  + contrib/hbide/resources/go-up.png
  + contrib/hbide/resources/hilight-all.png
  + contrib/hbide/resources/updown.ui
  + contrib/hbide/resources/updown.uic

  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
    ! An important fix.

  * contrib/hbide/ideedit.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idetools.prg
    + Extended: in addition to next/previous buttons to naviagte 
      occurances of selected text, three more buttons are added:
      "first", "last", occurance and "highlight all" occurances.

    + Implemented: macros parsing in "Parameters" list of 
      "Tools and Utilities" protocol. Currently following macros 
      are parsed:
        {source_fullname} => full sourcename of current edit instance
        {source_name}     => mere name of current edit instance
        {source_path}     => only path of source in current edit instance
        {%MY_ENV_VAR%}    => result of hb_GetEnv( "MY_ENV_VAR" )
           C:\temp\mycopy.bat {source_fullname} {source_path}\mysource.bkp
                =>
           C:\temp\mycopy.bat C:\harbour\contrib\hbide\hbide.prg C:\harbour\contrib\hbide\mysource.bkp
             ( assuming that current editor is containe hbide.prg )
2010-06-06 10:08:55 +00:00
Pritpal Bedi
c2556d1b65 2010-06-05 11:01 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/hbqt_hbqplaintextedit.cpp

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
    + Implemented: interface to find next/previous occurance of selected 
      text in the current editing instance. 

      The moment some text is selected in the editor, two tool-buttons will 
      automatically show-up on the lower-right corner of the editing window 
      to facilitate you execute "find" operation for selected text up or down.
      Buttons will disappear where there is no more selected text.

      The feature was requested by Antonio Linares.
2010-06-05 18:09:35 +00:00
Pritpal Bedi
c3e2d40df5 2010-06-03 18:22 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
    ! Minor.

  * contrib/hbide/resources/buildsource.png
    + Icon for "Build Source" action.

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
    + Implemeted: to compile a source, source is not saved 
        if in modified state. Action was already defined but inactive.

    + Implemented: to build a source, current defined environment is 
        used and build process stays in the folder where source resides.
        Also source is not saved. hbIDE attempts to executable it also.
        Action defines a new icon on the top-toolbar and also an entry 
        into the "Build" menu.
    
    % Few more fixes in selections and find processes.

      NOTE: new setup is also uploaded on my site.
2010-06-04 01:31:38 +00:00
Viktor Szakats
d37442fc17 2010-06-03 18:30 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbqt_hbqtableview.h
  * contrib/hbqt/hbqt_hbevents.h
  * contrib/hbqt/hbqt_hbdbfmodel.cpp
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt.ch
  * contrib/hbqt/hbqt_errorsys.prg
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
  * contrib/hbqt/tests/demoqt.prg
  * contrib/hbqt/THbQtUI.prg
  * contrib/hbqt/hbqt_hbqmainwindow.h
  * contrib/hbqt/hbqt_hbqtableview.cpp
  * contrib/hbqt/hbqt_hbevents.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.h
  * contrib/hbqt/gtqtc/gtqtc.cpp
  * contrib/hbqt/gtqtc/hbgtqtc.ch
  * contrib/hbqt/gtqtc/gtqtc.h
  * contrib/hbqt/hbqt_hbslots.h
  * contrib/hbqt/hbqt.h
  * contrib/hbqt/hbqt_hbdbfmodel.h
  * contrib/hbqt/hbqt_destruct.cpp
  * contrib/hbqt/plug_moc.prg
  * contrib/hbqt/hbqt_utils.cpp
  * contrib/hbqt/hbqt_misc.prg
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
  * contrib/hbqt/hbqt_hbqmainwindow.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_base.cpp
  * contrib/hbqt/hbqt_hbslots.cpp
  * contrib/hbziparc/hbziparc.prg
  * contrib/hbxbp/xbpappevent.prg
  * contrib/hbxbp/xbpsle.prg
  * contrib/hbxbp/xbplistbox.prg
  * contrib/hbxbp/xbppresspace.prg
  * contrib/hbxbp/xbpcheckbox.prg
  * contrib/hbxbp/xbpmenubar.prg
  * contrib/hbxbp/xbpradiobutton.prg
  * contrib/hbxbp/xbprtf.prg
  * contrib/hbxbp/xbpfiledialog.prg
  * contrib/hbxbp/xbpclipboard.prg
  * contrib/hbxbp/tests/demoxbp.prg
  * contrib/hbxbp/xbpbrowse.prg
  * contrib/hbxbp/xbptabpage.prg
  * contrib/hbxbp/xbpwindow.prg
  * contrib/hbxbp/xbpcombobox.prg
  * contrib/hbxbp/xbpstatusbar.prg
  * contrib/hbxbp/xbppushbutton.prg
  * contrib/hbxbp/xbpbitmap.prg
  * contrib/hbxbp/xbpprintdialog.prg
  * contrib/hbxbp/xbpprinter.prg
  * contrib/hbxbp/xbpscrollbar.prg
  * contrib/hbxbp/xbpfontdialog.prg
  * contrib/hbxbp/xbphtmlviewer.prg
  * contrib/hbxbp/xbpstatic.prg
  * contrib/hbxbp/xbptreeview.prg
  * contrib/hbxbp/hbpprocess.prg
  * contrib/hbxbp/xbpdialog.prg
  * contrib/hbxbp/xbpstyle.prg
  * contrib/hbxbp/xbptoolbar.prg
  * contrib/hbxbp/xbp3state.prg
  * contrib/hbxbp/xbpparthandler.prg
  * contrib/hbxbp/xbpspinbutton.prg
  * contrib/hbxbp/xbpdataref.prg
  * contrib/hbxbp/xbpgra.prg
  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbxbp/xbpmle.prg
  * contrib/hbblink/hbblink.ch
  * contrib/hbblink/blinker.prg
  * contrib/hbfship/secondfs.c
  * contrib/hbfship/pvalue.c
  * contrib/hbcups/hbcups.c
  * contrib/hbfoxpro/hbfoxpro.ch
  * contrib/hbfoxpro/dll.prg
  * contrib/hbcomm/tests/test.prg
  * contrib/hbcomm/hbcomm.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideplugins.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/hbide.ch
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idewizard.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideskeletons.prg
  * contrib/hbide/plugins/savebackup.prg
  * contrib/hbide/idefunctions.prg
  * contrib/hbide/iderequests.prg
  * contrib/hbide/idestylesheets.prg
  * contrib/hbide/ideenviron.prg
  * contrib/hbide/idesources.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideshortcuts.prg
  * contrib/hbide/idetags.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idetools.prg
  * contrib/hbide/resources/hbmk2_plugin_hbide.prg
  * contrib/hbide/idedocwriter.prg
  * contrib/hbide/ideparseexpr.c
  * contrib/hbide/idedocks.prg
  * contrib/hbsms/hbsms.prg
    * Deleted 'www.' from harbour-project.org website name.
      (www.harbour-project.org -> harbour-project.org)
2010-06-03 16:33:27 +00:00
Pritpal Bedi
f14fbb60cc 2010-05-10 17:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/ideenviron.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/resources/environments.ui
  * contrib/hbide/resources/environments.uic
    % Tooltips shifted to WhatsThis slot ( Sh+F1 to view ).
    + Applied: monospaced font "Courier" to input fields and text boxes.
2010-05-11 00:13:40 +00:00
Pritpal Bedi
a776467075 2010-05-03 00:38 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbxbp/xbptoolbar.prg
    ! Issued: setWindowaTitle() for main menubar.

  + contrib/hbide/resources/keyboardmappings.png
    + Icon for "keyboard Mappings" menu option.

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideshortcuts.prg
    + Implemented: almost all the docks can be placed on any of the areas.
      Exception is "Output Console" which is only dockable to top or bottom.
    + Main toolbar and statusbar featured to toggle. Statusbar, however is 
      session dependant, i.e., is not saved for next run. 
    ! Many artifacts fixed for Search/Replace engine, all the three variants.
    ! "Exppression" edit fixed to respect "Enter" key press to start searching.
    ! More artifacts I must be forgetting.
2010-05-03 07:49:22 +00:00
Pritpal Bedi
f4e7033a0c 2010-04-16 07:49 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/qth/QApplication.qth
  * contrib/hbqt/qth/QLayout.qth
    
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt_hbslots.cpp

  * contrib/hbxbp/hbpprocess.prg
  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbxbp/xbprtf.prg
  * contrib/hbxbp/xbpstatic.prg

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idefunctions.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/ideshortcuts.prg
  * contrib/hbide/idetools.prg

    + This commit includes Francesco Perillo's patch, after applying some 
      formatting and leaving what did not worked.
    + Includes Istvan's concept of child detachment, but not made active still.
    - Deleted many objects which were created in early days of hbIDE development.
    + Changed the way QApplication's init/exit procedures were implemented.
      Now the behavior is accurate.
    + Applied some more control over object destruction placement.
    + Plus a lot of optimizations I cannot jot down exactly.

    Basically, this commit aims at locating the GPF at exit. Now instead of 
    GPF, we receive two RTE's at the end, if exiting hbIDE at the quick 
    succession. But if you have worked into it for few seconds, it exits 
    normally. Please test.

    David, the QPixmap bug in hbXBP on OS2 was a bug in hbXBP and is fixed.
    You can test it again to verify if I am correct.
2010-04-16 15:04:28 +00:00
Pritpal Bedi
1f55bf7cb2 2010-04-12 23:25 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
    ! Little formatting.

  * contrib/hbxbp/xbpdialog.prg
    + Added :removeEventFilter() on destruction.

  * contrib/hbide/resources/environments.ui
  * contrib/hbide/resources/environments.uic
  * contrib/hbide/resources/projectpropertiesex.ui
  * contrib/hbide/resources/projectpropertiesex.uic
  * contrib/hbide/resources/shortcuts.ui
  * contrib/hbide/resources/shortcuts.uic

  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideshortcuts.prg

    ! Removed keyboard shortcuts from menu items.
    ! Attempted fix on nixes when project folder is not created before
      definition is saved.
    ! Dialog control labels: Exit => Close.
    ! More fixes to detect the executable from linker output ( still not perfect ).
    ! Changed the way project is launched. hope it will be useful for *nixes.

    + Implemented user-defined keyboard macros with following functionality:
        New    : whatever definition is typed-in the relevant fields is validated 
                 with existing ones and if unique is appended at the end of list.
                 The macro is also validated for compilation.
        Set    : current hilighted macro is redefined from values from fields 
                 after duplicate validation. The macro is also validated for compilation.
        Test   : Attempts to compile the macro as a block and reports back if 
                 successful or not. It just compiles but not evaluates.
        delete : deletes the highlighted macro after confirmation.
        Load   : loads macros from a disk-file and merges them with existing ones.
                 In case of duplicacy, last loaded macro is retained.
        Save   : Saves the macros in hbide.scu disk-file in hb_serialize()d form.
        Save As: Saves the macros in a disk-file with any name but with .scu extension.

        Any change is visible instantly,
        Unless <Save> is clicked, current loaded macros are not saved on disk. 
        This allows to use temporary created macros for current session.
 
        More info at http://hbide.vouch.info/ ( Topic: Keyboard Mappings )
2010-04-13 06:27:51 +00:00
Pritpal Bedi
eb31feabbd 2010-04-10 16:11 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/idedocks.prg
  * contrib/hbide/ideenviron.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/ideshortcuts.prg
  * contrib/hbide/idesources.prg
  * contrib/hbxbp/hbpprocess.prg

    ! Fixed error when double-click on build output was causing GPF
      if no editor tab is in focus, i.e., Welcome tabs are visible.

    - Removed some loggings.

    % Reworked how build commands are called. Now only one batch file
      is sent to the process engine to fire and rest is contained 
      into that batch file. It probably may solve *nix issue where 
      a .sh is not executed or any other command with long list of params.
2010-04-10 23:21:56 +00:00
Viktor Szakats
25e1c02d7e 2010-04-10 19:58 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbide/ideobject.prg
  * contrib/hbide/idefunctions.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idesources.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/hbide.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideshortcuts.prg
  * contrib/hbide/ideprojmanager.prg
    ! Replaced static hbide_dbg() function call with HB_TRACE( HB_TR_ALWAYS, ... )
      calls. This should also fix excessive permanently enabled debug 
      messages when using HBIDE. Pls keep it that way.
      BTW, probably HB_TR_ALWAYS should be changed to some lower priority.
2010-04-10 17:58:50 +00:00
Pritpal Bedi
9261be47fd 2010-04-06 17:40 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/THbQtUI.prg
    + Added more hbqt.ch defined constants.

  * contrib/hbide/resources/searchreplace.ui
  * contrib/hbide/resources/searchreplace.uic

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
    + Enabled again other way of "Search/Replace" invokable by Ctrl+Sh+F.
      This opens the dialog at the bottom of editing area. This is exactly
      the same as it is implemented in Qt Creator also.

    ! Fixed to always show up the right-dock widgets when invoked.
2010-04-07 00:51:15 +00:00
Pritpal Bedi
5dd78b404f 2010-03-25 08:03 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/resources/panel_8.png
  + contrib/hbide/resources/toolsutilities.ui
  + contrib/hbide/resources/toolsutilities.uic
    + Added one more dialog to interface "Tools & Utilities" implementation.

  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idedocwriter.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideskeletons.prg
  * contrib/hbide/idesources.prg
  * contrib/hbide/idestylesheets.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/idetools.prg

    + Implemented: "Tools & Utilities" option.
      It can be invoked via a new top-toolbar icon with two components,
      1) Click the icon itself to define a tool,
      2) Select from icon's drop-down list to execute.
         The execution is also available from within its interface <Execute> button.
    
    ! Reworked: "Panels" interface. Now it is a toolbar icon with drop-down menu.
      This interface is much-more elegant and effective in operations.

    + Implemented: auto-saving a source in the background.
      Legend: after every minute the contents of the source are inspected,
              if the source is modified, it is saved with ".tmp" extension
                concating after its original name. c:\x\my.prg => c:\x\my.prg.tmp
              if application exits normally, theis temp file is deleted,
              the same is done with every "SAve" invocation.
              if at next run, this file is detected, it is asked to replace the 
                original one.

    + Introduced: again, the animated controls, i.e., gradients on the menus, toolbars, etc,
      but are controlled via "Toggle Animation" option in the "View" sub-menu of main menu.
      This implementation is not made persistent, need to hera from you.

    ! Removed: "Always_On_Top" flag of Harbour Splash Screen. It was causing that in case 
      of startup error, or info rendering, user was unable to view the same.
    
    . Back to the pavilion, after a tiring outing. So I could not compile 
      all the changes I did before leaving, so please be patient if something goes weired.
2010-03-25 15:22:47 +00:00
Pritpal Bedi
25c8bf590f 2010-03-17 23:50 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbxbp/xbptreeview.prg
    ! Added :tooltipText instance variable to manage tooltips.

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/resources/docwriter.ui
  * contrib/hbide/resources/docwriter.uic
    
    ! Reworked "Projects" and "Editors" tree.
      Now the indentation is reduced, visual elements are added,
      long paths are shifted inside tooltips, nodes are sorted.
    ! "Editors" tree now displays the panel icon on which this source
      is hosted. A very handy and useful implementation.

      These tree-views will remain stationary for the rest of hbIDE 
      development cycle, i.e., there will bo no change whatsoever 
      on these components.

    ! Many other artifacts corrected while working with the production 
      projects myself. Probably now you may try, at least, for real-time
      use.

    + Setup a dedicated web-presence of hbIDE
        http://hbide.vouch.info/

      Please remain in tough with these pages as contents will keep on 
      posted with every available spare time.
2010-03-18 07:03:54 +00:00
Pritpal Bedi
3066b77fca 2010-03-10 10:36 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/resources/ffn.png
  * contrib/hbide/resources/panel_1.png
  * contrib/hbide/resources/panel_4.png
  * contrib/hbide/resources/panel_6.png
    ! Some cosmatic changes.

  * contrib/hbqt/hbqt.ch
    + Added more constants.

  * contrib/hbqt/hbqt_hbslots.cpp
  * contrib/hbqt/hbqt_hbslots.h
    + Added more slots for QCompleter.
    ! Changed some exiting : (text) -> (QString)

  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idehome.prg
    + Prepared for auto completion of functions.
2010-03-10 18:40:26 +00:00
Pritpal Bedi
4c408a2dd6 2010-03-09 02:03 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt_hbslots.cpp
  * contrib/hbqt/hbqt_hbslots.h
    + Added more slots for QTableWidget().

  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.h

  * contrib/hbqt/doc/en/class_hbqplaintextedit.txt
  * contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
  * contrib/hbqt/qtgui/THBQPlainTextEdit.prg
  * contrib/hbqt/qth/HBQPlainTextEdit.qth
    + Added method hbShowPrototype().
    ! All existing methods prefixed with "hb".
      Please update your code if it relies on HBQPlaintTextEdit().

  * contrib/hbqt/THbQtUI.prg
    ! More optimization in destructor.

  * contrib/hbide/resources/environments.ui
  * contrib/hbide/resources/environments.uic
  * contrib/hbide/resources/selectionlist.ui
  * contrib/hbide/resources/selectionlist.uic
    ! Simplified grid layouts.

  * contrib/hbide/hbide.ch

  * contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/ideenviron.prg
  * contrib/hbide/idefindreplace.prg
  + contrib/hbide/idefunctions.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idethemes.prg
   
    + Implemented: next step of "intellisense" by way of tagging 
      the functions prototypes. For its realization, added one 
      more docking widget containing controls to execute 
      required actions which can be activated via right-toolbar icon.

    + Rearranged icons on the right-toolbar as per logical 
      distribution. The same scheme is applied in "View" menu.

    + Implemented one more panel in statusbar to show current theme.

    ! Simplified editor-tabs methods for more grandalurity.

      This commit implements next level of intellisense. 
      How it works:

        1. Click on "ffn" icon on the right-toolbar or select 
           "Projects Functions Lookup" in "View" menu.
        2. In the opened dock-widget, click on "Mark Projects" button.
        3. On the top of widget, a list of all projects loaded will appear.
        4. Click in the little check boxes left to the project titles.
           You can choose n number of combinations.
        5. Click on "Re-Tag" button, if this is the first time you are 
           tagging project(s), or "Load Tags" if you already have tagged before.
        6. Keep a watch on right-corner of "Syntax" box, it will show the 
           running commentary. 
        7. After a while the table above will be populated with function info:
             Name  Type  Line  Project  Source.
        8. Type some alphabets in the top-most edit control. It will 
           position the function matching the typed characters in the table.
        9. Double-click on some function in the table, it will be opened 
           in the editor.

      Now the "intellisense" part, above was basic mechanism to gather contents:
 
        1. Type in the editor a function name which you think must have made up
           in the exercise carried above. The moment you will type "(" a nicely 
           formatted tooltip, displying the prototype of this function will 
           appear beneth the caret position. The prototype will remain there for 
           10 seconds ( finding a way how it can be controlled the way I want ). 

        2. Position editor caret somewhere in some function characters and 
           activate context menu with right click. Select "Goto Function" option.
           It will open the underlying source with cursor positioned on the 
           function proto. Siultaneously, the function will be made current 
           in the table in "Projects Functions Lookup" widget.
     
      More is on the way, please forward shortcomings of above mechanism.

      NOTE: A point to cheer, this commit do not produce GPF at exit.
      ====  It is tested with mingw 4.4.0. However, MSVC 8.0 still generates.
2010-03-09 10:12:01 +00:00
Pritpal Bedi
377582ef4d 2010-03-03 01:00 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt_garbage.h
  * contrib/hbqt/THbQtUI.prg
    ! A massive effort to stream-line GPF at exit.    
      At least now I know that it is caused by the way 
      QLayout has relation with parent and children both.
      To some extent I am been able to cover it, but not 
      completely, at least till now.

  * contrib/hbxbp/xbptreeview.prg
    + Implemented tooltip and changed the way context menu is fired.

  - contrib/hbide/projects/hbide.hbi
    ! Totally abandoned .hbi project protocol.

  * contrib/hbide/resources/environments.ui
  * contrib/hbide/resources/environments.uic
  * contrib/hbide/resources/projectpropertiesex.ui
  * contrib/hbide/resources/projectpropertiesex.uic
  * contrib/hbide/resources/themesex.ui
  * contrib/hbide/resources/themesex.uic
    ! Simplified layouts to cover GPFs at exit.

  * contrib/hbide/hbide.hbp
    + Added ideenviron.prg.

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  + contrib/hbide/ideenviron.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesources.prg
  * contrib/hbide/idethemes.prg

    + Restructured project management.
  
    + Implemented: .hbp as project definition protocol.
      Exploited -3rd= token to keep hbIDE specific data.
      Now you can open any existing .hbp and build it 
      out of the box. You must have set the build env
      beforehand OR take use of hbIDE's .env protocol.

    + Implemented: relative paths. The relative paths are
      are computed downwards and from .hbp location.
      Upper level paths still remain absolute. If your 
      projects structure is well thought of, then this 
      feature means this project tree is transferable 
      across different OS's and drives.

      The relative paths posed many difficulties. The 
      facts had to be resolved while search operations,
      while opening the files from Project Tree, and more.
      Now all are in perfect syncronization.

    + Managed: .hbp filters on source level and are 
      handelled transparently. In Project Tree source
      is shown without filters. Search operations are 
      also transparent. So, an entry like:
        {msvc|bcc}vouch/scandocument.prg 
      is respected by hbIDE.

    ! The other changes:
      - Project Properties dialogs contents.
        It is now very simple to understand and manage.

      - Concept of meta-data is eliminated.

      - The output executable is automatically recognized
        from linker output. So "Destination folder" is 
        kept for only "Launch" option which, in fact, does
        not know where executable is located. "Build & Launch"
        and "Rebuild & Launch" options do not look for
        "Destination folder" at all.

      - Project location is always pulled from .hbp file.
        It is not retained anywhere to make the project 
        portable.

      - Many more facts I cannot recollect at present.

     ; TODO: {hbmk2} slot in hbide.env protocol to pass
       command-line parameters.

     ; NOTE: delete hbide.ini, idesettings.ini, all .hbi's
             and start with clean state.
             
             Regression is highly possible and I am eager 
             to hear from you. This commit is just for 
             stramlining project management, though there 
             few other features implemented less important
             to mention.
2010-03-03 09:02:05 +00:00
Pritpal Bedi
284f6b1012 2010-02-26 18:15 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/THbQtUI.prg
    ! Miss of prev commit.

  * contrib/hbide/idefindreplace.prg
    ! A nasty fix.

  * contrib/hbide/ideharbourhelp.prg
    + Implemented: text file viewer "as is" if it does not contain 
      any function's documentation. In Harbour's /doc* tree
      there are many files without NANFORUM tags.
2010-02-27 02:18:35 +00:00
Pritpal Bedi
2fe41e8222 2010-02-24 16:46 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/resources/docviewgenerator.ui
  * contrib/hbide/resources/docviewgenerator.uic
  * contrib/hbide/resources/environments.ui
  * contrib/hbide/resources/environments.uic
  * contrib/hbide/resources/finddialog.uic
  * contrib/hbide/resources/findinfiles.uic
  * contrib/hbide/resources/findinfilesex.ui
  * contrib/hbide/resources/findinfilesex.uic
  * contrib/hbide/resources/findsource.uic
  * contrib/hbide/resources/mainwindow.uic
  * contrib/hbide/resources/projectproperties.uic
  * contrib/hbide/resources/projectpropertiesex.ui
  * contrib/hbide/resources/projectpropertiesex.uic
  * contrib/hbide/resources/searchreplace.ui
  * contrib/hbide/resources/searchreplace.uic
  * contrib/hbide/resources/searchreplacepanel.ui
  * contrib/hbide/resources/searchreplacepanel.uic
  * contrib/hbide/resources/selectionlist.uic
  * contrib/hbide/resources/selectproject.uic
  * contrib/hbide/resources/skeletons.ui
  * contrib/hbide/resources/skeletons.uic
  * contrib/hbide/resources/themes.uic
  * contrib/hbide/resources/themesex.ui
  * contrib/hbide/resources/themesex.uic
    ! A thourough uniform naming protocol adapted.

  + contrib/hbide/resources/harbourhelp.png
  + contrib/hbide/resources/projectstree.png
  + contrib/hbide/resources/richtext.png
  + contrib/hbide/resources/syntaxhiliter.png
  + contrib/hbide/resources/tabs.png
  * contrib/hbide/resources/blockcomment.png
  + contrib/hbide/resources/codeskeletons.png
  * contrib/hbide/resources/dc_function.png
    + Added more images.

  * contrib/hbqt/hbqt_hbslots.cpp
  * contrib/hbqt/hbqt_hbslots.h
    + Added slots for QDockWidget().

  * contrib/hbqt/THbQtUI.prg	
    ! Refined destructor.

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idethemes.prg
 
    + This commit is mainly uplifts and rationlizes the menus,
      toolbars, and docking widgets plus a big consideration of 
      parent child relationship is achieved.

    * Implemented: right-side toolbar which contains the toggle
      icons for docking widgets. The same functionality is available
      also in <Docks> main-menu option.

    * Menu options are reworked and all actions pertaining to docking
      widgets are removed from there. The same is applied to 
      top-toolbar also. All actions pertaining to block operations 
      are cornered at the left-side toolbar. Thus menus, toolbars are 
      in perfect synchronization.

    * Harbour-help is now loaded on demand. Only when help icon is 
      toggled on the right-toolbar.

    * hbIDE icon is changed as I committed before. No one forwarded
      his opinions, so I assume it is appropriate image.

    ; NOTE: This commit now presents hbIDE to the external world 
      with almost-profession look and feel, so we can spread the word.

    ; This commit is with heavy changes so regression is possible.
      Please speak-out if you find something weired.
2010-02-25 01:12:15 +00:00
Pritpal Bedi
a1a104fd89 2010-02-21 07:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
+ contrib/hbide/resources/dc_delete.png
  + contrib/hbide/resources/dc_down.png
  + contrib/hbide/resources/dc_folder.png
  + contrib/hbide/resources/dc_function.png
  + contrib/hbide/resources/dc_home.png
  + contrib/hbide/resources/dc_left.png
  + contrib/hbide/resources/dc_plus.png
  + contrib/hbide/resources/dc_print.png
  + contrib/hbide/resources/dc_quit.png
  + contrib/hbide/resources/dc_refresh.png
  + contrib/hbide/resources/dc_right.png
  + contrib/hbide/resources/dc_textdoc.png
  + contrib/hbide/resources/dc_textdocument.png
  + contrib/hbide/resources/dc_up.png
  + contrib/hbide/resources/docviewgenerator.ui
  + contrib/hbide/resources/docviewgenerator.uic
  * contrib/hbide/resources/help.png
  + contrib/hbide/resources/searchreplace.ui
  + contrib/hbide/resources/searchreplace.uic
    + Added few more images and redefined a prev one.

  * contrib/hbqt/THbQtUI.prg
    + Added some more hbqt.ch defined constants in the engine.

  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideharbourhelp.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idestylesheets.prg
    + Implemented an html viewer for Harbour's documentation .txt
      files with slots to make it a "writer" too if it fits the purpose.

    ! Reimplemented the "Search-Replace" user interface and working.
      A work-in-progrss which I will explain later.

    ; Harbour Documentation Viewer - How to Invoke
        * Close any docking pane is visible at the right panel.
        * Point to <Docks> option on <Main Menu> and click on 
           <Document Viewer>
        * A right-side "Document Viewer" window will appear.
        * Provide Harbour's installation root path in 
          "Harbour Installation Root:" field, i.e., C:\harbour
        * OR alternatively, you can choose one by clicking 
          "Harbour Installation Root Path" icon on the right of 
          field.
        * Click "Refresh" icon on the toolbar of "Document Viewer" 
          window" only once and wait a couple of seconds.
        * "Contents" tab will be populated with /doc and /doc/en 
          folders.
        * Double-click on one to expand - you will be able to 
          view .txt file names.
        * Double-click on some .txt node, wait a couple of seconds,
          and you will be able to see "functions" nodes.
        * Double-click on the function's node and you will be 
          presented with html display in the "View" tab on the right.
        * Navigate other tabs on the right, you will understand the 
          contents.
        * Next time hbIDE will remember Harbour's installation root path.
        * :( On exit expect to receive a GPF, investigating.

      Right now only "Viewer" part is ready per preliminary stages.
      I have a lot of ideas on my drawing-board and would like to 
      hear your opinions. Basic components to write a document are 
      also in place, but I need to gather more info and what else 
      can be included.

      In the next several days I will be focussing on this tool.

      Bacco and Vailton, please bear with me, as this interface 
      is the basic requirement of hbIDE which I had kept postponed 
      till now. A stand alone viewer and writer has its own purpose,
      space, and audience.
2010-02-21 15:49:37 +00:00
Pritpal Bedi
9308c7731c 2010-02-18 18:05 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
+ contrib/hbide/resources/closetab.png
  + contrib/hbide/resources/down.png
  + contrib/hbide/resources/minus.png
  + contrib/hbide/resources/previous.png
  + contrib/hbide/resources/up.png
  * contrib/hbide/resources/searchreplacepanel.ui
  * contrib/hbide/resources/searchreplacepanel.uic

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idefindreplace.prg
    + Implemented ( partial ) extended search/replace panel like Qt itself.
      This can be activated via <Edit><Find / Replace Ex> or Ctrl+Sh+F.
      The panel is anchored beneth editor area and above status-bar, 
      or above any other dock-widget at the bottom area is open. 
      It implements incremental search with visual color differentiation.
      Try typing in some text to find. Still other buttons are inactive.
      It may take a day to synchronize everything.

      This implementation adds another value to "Find/Replace".
      Ctrl+F implementation is there as is. You can take advantage of both.
2010-02-19 02:11:26 +00:00
Pritpal Bedi
a1e0bdb7a9 2010-02-18 05:58 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
+ contrib/hbide/resources/searchreplacepanel.ui
  + contrib/hbide/resources/searchreplacepanel.uic

  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/idestylesheets.prg
    + Prepared to use panel instead of "Replace/Find" dialog.
    ! Vaiables name uniformity for docking widgets.
    ! Simplification and centralization of creation of "Docking" widgets.
    % Fixed to not crash when "Find in Files" was not called before exit.

    ; Press CTRL+F and see a panel appearing inbetween editor and  statusbar.
      This widget has to be matured a little and will facilitate that 
      search and replace action will never hide any part of the 
      editing area. A final ( uptil now ) reform in user-interface.
2010-02-18 14:06:48 +00:00
Pritpal Bedi
0c884fcf0c 2010-02-17 18:13 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
+ contrib/hbide/resources/blockcomment.png
  + contrib/hbide/resources/environments.ui
  + contrib/hbide/resources/environments.uic
  + contrib/hbide/resources/findinfilesex.ui
  + contrib/hbide/resources/findinfilesex.uic
  + contrib/hbide/resources/projectpropertiesex.ui
  + contrib/hbide/resources/projectpropertiesex.uic
  + contrib/hbide/resources/streamcomment.png
  + contrib/hbide/resources/themesex.ui
  + contrib/hbide/resources/themesex.uic

  * contrib/hbqt/THbQtUI.prg

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idestylesheets.prg
  * contrib/hbide/idethemes.prg

    + This commit implements all other windows ( except Find/Replace )
      opened as a docked-window of the main-frame. This facilitates
      a greater control over the various actions together. This is a 
      major change in the interface, please update your notes.

      Find/Replace window is scheduled to be contained in separate panel
      at the bottom of the editor area, right on top of the "Output Console",
      as is implemented in Qt Creator itself. Please express your opinions.

      The above should have been the way since begining, but you know,
      programming skills are polished with time.
2010-02-18 02:20:00 +00:00
Pritpal Bedi
254fefc062 2010-02-16 09:21 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idestylesheets.prg
    + Started left-hand toolbar(s) to present visual interactions for 
      a number of hidden actions. A work-in-progress.

  * contrib/hbqt/THbQtUI.prg
    ! Fixed object destruction sequence per latest changes in HbQtUI() class.
2010-02-16 17:28:28 +00:00
Pritpal Bedi
78ddb279db 2010-02-14 17:34 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/gtwvg/wvgscrlb.prg
    ! Defined method :configure() as VIRTUAL.

  * contrib/hbqt/qth/HBQPlainTextEdit.qth
  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.h
  * contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
  * contrib/hbqt/qtgui/THBQPlainTextEdit.prg
    + Added class variable :block which can be set with qEdit:hbSetEventBlock( bBlock ).
      I did not set it via the constructor as it is implementation specific.
      The goal was to capture mouse or other events which are consumed by 
      parent class itself and are not forwarded to the widget. At present 
      it is used to inform double-click event to qEdit and is scheduled 
      to be extended.

  * contrib/hbqt/hbqt_misc.prg
    + Added method :from(), synonymous to :configure() to avoid grasping confusion.
      Now both syntaxes are supported:
        qCursor := QTextCursor():configure( qEdit:textCursor() )
        qCursor := QTextCursor():from( qEdit:textCursor() )

  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg

    + Project Management: enabled "Launch Parameters" which are supplied to the 
                            executable if "Launch..." is selected with build 
                            or otherwise.
                        : supressed auto expansion of "Current Project" at startup.
                            Was a constant cause of annoyance if the project tree 
                            been fairly large.
    + Docking Windows: reworked to occupy proper corners. 
                         Please delete idesettings.ini.

    ! Find_Replace Dialog: set to find from begining if "Find What" is changed.

    ! Code Skeletons: fixed to not append blank lines while called.
                    : selection menu appears at the current cursor coordinates.

    + Editor: double-click on some word place the selection in copy buffer in case 
                that word is selected. This feature I always wished-for in xMate.

    + Editor: highly .prg code suited indentation engine. It comprise so many 
                factors to explain. Please test. I feel you will be really happy.
                Also let me know what else can be implemented. Code is now 
                under my grasp and probably more ideas are already building up.
2010-02-15 02:15:09 +00:00
Pritpal Bedi
a85a40c0a3 2010-02-10 01:00 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/docs/idemainpage.html
  * contrib/hbide/docs/multiviews.html

  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesources.prg
    + Extended Find-in-files search to sub-folders.
    + Implemented navigation in "hbIDE Help" under context menu.
    % Normalized status-bar panels, added distinct colors where required.
2010-02-10 09:07:40 +00:00
Pritpal Bedi
b67daee283 2010-02-09 08:38 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idesources.prg

    + Implemented multiple views.
      How it works:
        * Select "New..." from drop-down menu of "Views" combo-box in toolbar.
        * An input dialog opens, provide a useful name, 
             keep it "one word" if possible
        * Press <ENTER> or click "Ok", a blank edit area will come-up.
        * Make ususal operations to add/delete/move sources.
        * You must be able to see view's name in the status-bar in blue.
        * Thus created "view" name will appear in the drop-down list.
        * To switch to another view, select it from same drop-down.
        * To verify, come out of the hbIDE and re-enter.
        * Voila, you have the "views" created.
        * "Main" view or say "root" view is always present.

      ;Please report if anything is missing or could be better.
2010-02-09 17:02:31 +00:00
Pritpal Bedi
3062843909 2010-02-07 07:46 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.h
  * contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
  * contrib/hbqt/qtgui/THBQPlainTextEdit.prg
  * contrib/hbqt/qth/HBQPlainTextEdit.qth

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg

    + Implemented <Delete Line Ctrl+Del> - Current Line
                  <Indent Right Ctrl+Tab> - Selected Lines
                  <Indent Right Shift+Ctrl+Tab> - Selected Lines

      Indenting is exercised on selected lines with "one" column at a time.

      Vailton, can you create icons for above?
2010-02-07 15:56:14 +00:00
Pritpal Bedi
89bc7f96a2 2010-02-06 15:21 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/resources/findinfiles.ui
  * contrib/hbide/resources/findinfiles.uic

  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/idesaveload.prg

    ! Fixed for RegEx to be compiled with case sensivity.
      BTW, hb_regEx( compiledRegExp, cString, lCaseSensitive, ... )
      does not honor <lCaseSensitive> attribute. Only 
      hb_compRegEx() honors.

    + Implemented to remember last find folder and search expression.
2010-02-06 23:27:45 +00:00
Pritpal Bedi
40894a194c 2010-02-06 13:44 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/resources/findinfiles.ui
  * contrib/hbide/resources/findinfiles.uic

  * contrib/hbqt/qtgui/QSizePolicy.cpp
  * contrib/hbqt/qth/QSizePolicy.qth

  * contrib/hbqt/THbQtUI.prg

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg

    + Added more info in "Results".
    ! Core normalization.
    + Implemented RegEx search. 
      I am not good at this engine, please test.
    % Changed TODO => DONE in one entry in ChangeLog.
2010-02-06 21:51:16 +00:00
Pritpal Bedi
56caf8b553 2010-02-05 18:34 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.prg
  * contrib/hbide/idefindreplace.prg
    ! Fixed "Stop" to work as expected in "Find in Files" dialog.
2010-02-06 02:33:13 +00:00
Pritpal Bedi
c201534892 2010-02-05 08:59 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/resources/findinfiles.ui
  * contrib/hbide/resources/findinfiles.uic
  * contrib/hbqt/THbQtUI.prg

  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
    
    + Implemented "Search" option activated via "Search" toolbar icon.
      This implementation presents a dialog to select any number of 
      available "Projects", one "Folder", and "Opened Tabs" in any 
      combination". 

      The results are presented in within-the-dialog edit window
      in a nicely colored and formatted way. This editor also provides
      for "Select All", "Copy", "Clear", "Print", "Find...", 
      "Zoom In/Out" and some more ( to be activated ) options. 
      These options are visible in context menu activated with 
      right-clicking inside the "Results" editor.

      This implemetation also facilitates multiple instances of the 
      "Search" dialogs carrying on the operation at the same time.

      Double-click on any line will open an edit-tab in the main editing
      area, cursor will be positioned highlighted on the "Expression" 
      string, keeping the focus in "Results" editor only.

      Normal usage is carrying the expected actions but I must be 
      ignoring something important. Please test. 

      Please forward any suggessions you think will make it more useful.

    ; TODO: Regex implementation.
            Regex for multiple lines.
            Including sub-folders.
            Including sub-projects.
            "Replace" implementation ( I am exploring how it can be safest )
2010-02-05 17:19:53 +00:00
Pritpal Bedi
d9f54ed391 2010-02-02 16:24 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/iderequests.prg
  * contrib/hbide/idethemes.prg

  * contrib/hbide/resources/projectproperties.ui

  + contrib/hbide/resources/finddialog.uic
  + contrib/hbide/resources/findinfiles.uic
  + contrib/hbide/resources/findsource.uic
  + contrib/hbide/resources/mainwindow.uic
  + contrib/hbide/resources/projectproperties.uic
  + contrib/hbide/resources/selectionlist.uic
  + contrib/hbide/resources/selectproject.uic
  + contrib/hbide/resources/themes.uic

  * contrib/hbqt/hbqt.ch
  * contrib/hbqt/qtgui/QLabel.cpp
  * contrib/hbqt/qtgui/QSizePolicy.cpp
  * contrib/hbqt/qtgui/QSpacerItem.cpp
  * contrib/hbqt/qth/QLabel.qth
  * contrib/hbqt/qth/QSizePolicy.qth
  * contrib/hbqt/qth/QSpacerItem.qth

  * contrib/hbqt/THbQtUI.prg

  * contrib/hbxbp/xbpdialog.prg
  * contrib/hbxbp/xbpwindow.prg

    + This commit implements .uic files generated 
      via uic.exe of Qt distribution given a .ui file.
      And hence eliminated the wooping cargo of QtUiTools.lib
      which consumes arount 23+ MB over and above of application load.
      All the dialogs/windows used in hbIDE are fully functional.

      This implementation is in parallel of previous one and 
      either can be used. The difference in syntax is ( and as used in hbIDE )

         #ifdef HBIDE_USE_UIC
            oDlg := HbQtUI():new( ::oIDE:resPath + "selectproject.uic", ::oDlg:oWidget ):build()
         #else
            oDlg := HbQtUI():new( ::oIDE:resPath + "selectproject.ui", ::oDlg:oWidget ):create()
         #endif
      
      To take advantage of this feature you need to compile hbIDE 
      with -dHBIDE_USE_UIC. You can examine the task manager for memory
      usage, with and without -dHBIDE_USE_UIC.

      Please note that this implementation is not 100% complete.
      I could synchronize the dialogs of hbIDE only. Though most of the 
      code is good for daily-use widgets still we need to add some 
      more functionality into the code. But it is simple. Mainly 
      we be needing more constants included in hash to convert 
      string defines to numeric representation.

      Please test and report any issues.
2010-02-03 00:39:51 +00:00
Pritpal Bedi
cd721d8b74 2010-01-30 18:35 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/generator/hbqtgen.prg

  * contrib/hbqt/hbqt_garbage.h
  * contrib/hbqt/hbqt_hbevents.cpp
  * contrib/hbqt/hbqt_hbevents.h
  * contrib/hbqt/hbqt_hbqmainwindow.cpp
  * contrib/hbqt/hbqt_hbslots.cpp

  + contrib/hbqt/qth/HBQMainWindow.qth

  * contrib/hbqt/tests/demoqt.prg

  * contrib/hbxbp/hbpprocess.prg
  * contrib/hbxbp/xbp3state.prg
  * contrib/hbxbp/xbpbrowse.prg
  * contrib/hbxbp/xbpcheckbox.prg
  * contrib/hbxbp/xbpcombobox.prg
  * contrib/hbxbp/xbpdialog.prg
  * contrib/hbxbp/xbpfiledialog.prg
  * contrib/hbxbp/xbpfontdialog.prg
  * contrib/hbxbp/xbphtmlviewer.prg
  * contrib/hbxbp/xbplistbox.prg
  * contrib/hbxbp/xbpmenubar.prg
  * contrib/hbxbp/xbpprintdialog.prg
  * contrib/hbxbp/xbprtf.prg
  * contrib/hbxbp/xbpscrollbar.prg
  * contrib/hbxbp/xbpsle.prg
  * contrib/hbxbp/xbpspinbutton.prg
  * contrib/hbxbp/xbpstatusbar.prg
  * contrib/hbxbp/xbptabpage.prg
  * contrib/hbxbp/xbptoolbar.prg
  * contrib/hbxbp/xbptreeview.prg
  * contrib/hbxbp/xbpwindow.prg

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idethemes.prg

    ! This commit has cleaned Qt wrappers not to 
      hold any GC collectible pointer inside. Events 
      and Slots protocol is completely re-structured.
      
    % Improved HB_TRACE() logs. Now Qt wrappers can be 
      generated with relevant filter if env variable 
      HBQT_BUILD_TR_LEVEL=HB_TR_ALWAYS|ERROR|etc 
      defalt being TR_LEVEL_DEBUG. The formatting is 
      also improved.

    % Signals are fired with exact same parametres 
      found in Qt documentation. Eearlier first parameter
      was object pointer followed by slots's parameters.
      This facilitates for the speed and better code
      maintenance.

    ! Intensive debugging has shown that - operator new() -
      is always called from cpp stub generated by hbMK2 
      but for operater delete(), behavior is inconsistent.
      All classes derived from QObject() never call delete()
      in the stub, some classes, which Qt defines as "on the 
      stack" call our stub and hence memory is released.
      Perhaps this is the main reason, I cannot get back
      all the momory if another dialog is opened and closed.
      All claases which are derived from Qt class, viz., HbQ*
      are released properly. Looking at this behavior it 
      comes to mind if all classes are sub-classed? A very 
      huge job nevertheless which I may take later.

  * contrib/hbqt/qtcore/*.cpp
  * contrib/hbqt/qtgui/*.cpp
  * contrib/hbqt/qtnetwork/*.cpp

      ;NOTE : Regression is possible. Please report any issues.
2010-01-31 03:21:29 +00:00
Pritpal Bedi
0cb619640d * contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idethemes.prg

  * contrib/hbqt/filelist.mk
  * contrib/hbqt/generator/qt45.qtp
  * contrib/hbqt/hbqt.h
  * contrib/hbqt/qtcore/filelist.mk
  + contrib/hbqt/qtcore/QBuffer.cpp
  + contrib/hbqt/qtcore/TQBuffer.prg
  + contrib/hbqt/qth/QBuffer.qth
  - contrib/hbqt/THbpQtUI.prg
  + contrib/hbqt/THbQtUI.prg

  * contrib/hbxbp/hbpprocess.prg
  * contrib/hbxbp/xbpfontdialog.prg
  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbxbp/xbphtmlviewer.prg
  * contrib/hbxbp/xbplistbox.prg
  * contrib/hbxbp/xbpmenubar.prg
  * contrib/hbxbp/xbpprintdialog.prg
  * contrib/hbxbp/xbpstatusbar.prg
  * contrib/hbxbp/xbptoolbar.prg
  * contrib/hbxbp/xbptreeview.prg
  * contrib/hbxbp/xbpwindow.prg

    -+ HbpQtUI => HbQtUI.
    !  Cleaned :pPtr := 0  =>  :pPtr := NIL
    +  Implemented QBuffer() class which allows to load .u
       from .prg embedding or from database.
2010-01-29 17:27:16 +00:00
Pritpal Bedi
3b97f4737c 2010-01-28 18:03 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/filelist.mk
  + contrib/hbqt/THbpQtUI.prg
    
  - contrib/hbxbp/hbpqtui.prg
  * contrib/hbxbp/Makefile
  * contrib/hbxbp/xbpdialog.prg
  * contrib/hbxbp/xbpwindow.prg

  * contrib/hbide/hbide.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idethemes.prg

    -+ Shifted HbpQtUI() class from hbXBP to hbQT.
2010-01-29 02:07:36 +00:00
Pritpal Bedi
cd867df55d 2010-01-27 18:45 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/resources/findinfiles.ui
    + Started implementation of "Find in Files" option.
      Just to have a glimpse what components it will contain,
      click on "Search" button along-side "Find" buttons.
      It is not working but it may prompt you which feature
      I missed to include. Just play.
2010-01-28 02:47:56 +00:00
Pritpal Bedi
ae40e2d436 2010-01-26 02:10 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbxbp/Makefile
  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbxbp/xbpwindow.prg
  + contrib/hbxbp/hbpqtui.prg
  - contrib/hbxbp/xbpqtuiloader.prg
    % Renamed XbpQtUiLoader() class to HbpQtUI()
      This is Harbour extension to Xbase++ class framework.

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/resources/projectproperties.ui
    % Changed <Main Menu> prompts:
      + <Environments> in <Project>
      - <Options> => <Setup>
      - <Codecs>  => <Setup> <Codecs>
    ! Separated the <Define Environments> dialog from <Project Properties>
      And added a menu option in <Projects> main-menu prompt.
    + Implemented to load xMate's Project file (.xhp) when a new project 
      is created. Can be invoked via a push button on top-right corner of
      <General> tab.
2010-01-26 10:22:47 +00:00
Pritpal Bedi
dee1085796 2010-01-23 13:32 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/idefindreplace.prg
    ! Fixed: error when find operation was unsuccessful.

  * contrib/hbxbp/xbp.ch
    + Added HBXBP_DBG( HB_TR_ALWAYS,... )

  * contrib/hbxbp/xbppushbutton.prg
    + Behavior: if focus is set on the object, then its property is 
      changed to autodefault() which means the button will be highlighted
      with additional border to indicate that it can be activated
      with "Return" press. However this property does not work in
      buttons if XbpDialog() is the parent. 

  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbxbp/xbpwindow.prg
  * contrib/hbxbp/xbpdialog.prg
    + Implemented: XbpDialog():maxButton, :minButton 
      QUESTION: which instance variable controls the resizing behavior?

  * contrib/hbxbp/xbpsle.prg
    + Added: callback slot :returnPressed.
        oSle1:returnPressed := {|| SetAppFocus( oSle2 ) }
      This facilitates the TAB behavior which navigating the SLE's.
      This effectively also means you can control the SLE's like
      ReadModal(). Just validate the SLE (oGet) and move to 
      another SLE or any other part. 

      Angel, your observation will matter.
2010-01-23 22:57:04 +00:00
Pritpal Bedi
c1542c45f3 2010-01-20 17:16 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idesaveload.prg
    + Implemented: Formatting - <Replace Tabs with Spaces>
                                <Remove Trailing Spaces>
         This can be achieved via Mainmenu <Edit><Format...> option.
    ! New: Find/Replace: Current selelcted text in "Find what:" control
         in selected state.
    % Changed: The way hbide.ini is loaded. 

            cHbideIni := hb_argv( 0 )

            IF empty( cHbideIni )
               IF file( "hbide.ini" )
                  cHbideIni := "hbide.ini"
               ELSE
                 cHbideIni := hb_dirBase() + "hbide.ini"
               ENDIF
            ENDIF
            oIde:cProjIni := cHbideIni

     ! Improved qTextDocument:isModified() handelling.

     ; TO CONSIDER: QPlainTextEdit() class by itself is not providing
          enough methods to have finest of the editing experience.
          So, it may be necessary to subclass it for extended features.
2010-01-21 01:32:59 +00:00
Pritpal Bedi
3734b30614 2010-01-15 15:36 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/idethemes.prg
    ! Fixed: to ensure that next invocation correctly sets the last
      working codec. [ Marco Bra ]
    ! Fixed: to correctly dispay the last line nos while inserting
      or deleting bottom lines. [ Marco Bra ]
    ! Enabled HBQT_RELEASE_WITH_DELETE protocol for hbIDE.
2010-01-15 23:39:52 +00:00
Pritpal Bedi
91b1c271f5 2010-01-11 16:58 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesources.prg
    + Implemented various actions on current editing window 
      honoring splitted windows indivisually, i.e., Find/Replace,
      Goto, Function activated via Function List, etc., etc.
      Though I have attempted resonable debugging but still
      for sure I must have left undesirable, please report.

    + Thoroughly overhauled "Editor Tab" management, more elegant
      and encapsulated.
2010-01-13 01:02:57 +00:00
Pritpal Bedi
9c0bf52ee1 2010-01-04 01:58 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idefindreplace.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/projects/hbide.hbi

  + contrib/hbide/resources/insert-datetime.png
  + contrib/hbide/resources/insert-external-file.png
  + contrib/hbide/resources/insert-procname.png
  + contrib/hbide/resources/readonly.png
  * contrib/hbide/resources/tabreadonly.png

  * contrib/hbxbp/xbpqtuiloader.prg
 
    A lot of changes are in effect including the patch 
    sent by Vailton. The code is in the middle of restructing
    phase and may take several days to finish. Till the I request
    you all to bear with me and may expect some bumps too.
    Please do not update this code until I finish preliminaries.

    To sumup this commit includes:
    ! Thourough reclassification of classes and separation of
      code fragments in a way that not two developers collide
      with each other. One may takeup one segment and the other another.

    + Used hbide_* namespace and have changed almost every function.

    + Implemented, though not in a way I wanted, building a project
      via Qt's process classes. You will see a refreshing difference.

    + A major breakthrough in XbpQtUiLoader() class implementation.
      Now you can access the child widgets of a .ui component per
      this syntax:
          oUI:qObj[ "checkMatchCase" ]:setChecked( .t. )
                    =>
          oUI:q_checkMatchCase:seChecked( .t. )
              ^^
      just prefix object name with "q_" ( Q + Underscore ).
      This greatly simmplifies coding and allows to exploit child
      widgets as real-time objects.
2010-01-04 10:15:18 +00:00
Pritpal Bedi
4fe24d5bd5 2009-12-28 14:56 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  + contrib/hbide/idedocks.prg
    + Added new file separating the code building docking widgets.
      Another round of reforms, more follows.

  * contrib/hbide/idefindreplace.prg
    ! Minor.
2009-12-28 22:57:36 +00:00
Pritpal Bedi
121767b0e0 2009-12-28 13:43 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/hbqt_misc.prg
    % Fixed small omission, thanks Vailton.
  * contrib/hbxbp/xbprtf.prg
    % Fixed wrong Qt call, thanks Vailton.

  * contrib/hbide/hbide.hbp
  * contrib/hbide/hbide.prg
  + contrib/hbide/idefindreplace.prg
    ! Separated Find/Replace class.
      2nd round of reforms.
      More follows.
2009-12-28 21:44:51 +00:00