Prometheus Software Forum Index Prometheus Software
Support Forums
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Status request.

 
Post new topic   Reply to topic    Prometheus Software Forum Index -> Phoenix 3.0
View previous topic :: View next topic  
Author Message
Herman Kieskamp
Member


Joined: 11 Oct 2004
Posts: 157
Location: Netherlands

PostPosted: Fri Nov 20, 2009 4:23 am    Post subject: Status request. Reply with quote

Hi Dominic,

can/will you give a status on v.3. ?
I'd rather spent 149,-- on upgrade to Phoenix, then 49,-- on pbforms (for this
xmas).

(Don't worry Bob, I'll buy yours probably anyway too).

Herman.
Back to top
View user's profile Send private message
TechSupport
Site Admin


Joined: 14 Sep 2004
Posts: 683
Location: Mississauga ON, Canada

PostPosted: Sun Nov 22, 2009 6:29 pm    Post subject: Reply with quote

It is going well but slow. I had to revisit one of the core routines in the Phoenix 3.0
editor after I saw the performance of another product. Three minutes plus to load a
50000-thousand line code file is unacceptable. Two seconds to load the same file in
Phoenix was also unacceptable and meant that I could not use my own product.
But don't worry, a code file can now contain half a million lines of code and IntelliSense
in Phoenix is not going to slow you down.
Back to top
View user's profile Send private message Send e-mail
Herman Kieskamp
Member


Joined: 11 Oct 2004
Posts: 157
Location: Netherlands

PostPosted: Tue Nov 24, 2009 2:53 am    Post subject: Reply with quote

TechSupport wrote:
It is going well but slow.


does this also mean no mesmarizing Phoenix to rise above the horizon this xmas?

Herman.
Back to top
View user's profile Send private message
Andrew Lindsay
Member


Joined: 18 Sep 2004
Posts: 43
Location: Perth, Australia

PostPosted: Mon Apr 12, 2010 8:01 pm    Post subject: Reply with quote

Dominic,

Just saw your posts over on the PB site regarding Excel Com automation. Has this been written using Phoenix 3.0? Any news when the new version will be coming out. I've got my 40th birthday coming up next month and need to get my wish list together...
Back to top
View user's profile Send private message
TechSupport
Site Admin


Joined: 14 Sep 2004
Posts: 683
Location: Mississauga ON, Canada

PostPosted: Mon Apr 12, 2010 10:35 pm    Post subject: Reply with quote

I used Phoenix2.0 to create and build the low-level COM and PB9 COM versions.
Back to top
View user's profile Send private message Send e-mail
Andrew Lindsay
Member


Joined: 18 Sep 2004
Posts: 43
Location: Perth, Australia

PostPosted: Mon Apr 12, 2010 10:48 pm    Post subject: Reply with quote

For those that are technically challenged - do you have any cheat sheets on how this is done?

Regards

Andrew
Back to top
View user's profile Send private message
TechSupport
Site Admin


Joined: 14 Sep 2004
Posts: 683
Location: Mississauga ON, Canada

PostPosted: Wed Apr 14, 2010 7:58 pm    Post subject: Reply with quote

You want to dabble in low-level COM?
Back to top
View user's profile Send private message Send e-mail
Andrew Lindsay
Member


Joined: 18 Sep 2004
Posts: 43
Location: Perth, Australia

PostPosted: Wed Apr 14, 2010 8:20 pm    Post subject: Reply with quote

I work with excel every day and the biggest bug bear I have is the (lack of) speed when using BBQ for formulas or interfacing with work sheets. I write a lot of user functions in PB to XLLs but this can be a time consuming activity. I have thought of writing a program that would take a CBS function and then convert it to pb xll code. But I am often too busy/lazy to do it.

That said, I am always interested in learning new tricks.

Regards

Andrew
Back to top
View user's profile Send private message
TechSupport
Site Admin


Joined: 14 Sep 2004
Posts: 683
Location: Mississauga ON, Canada

PostPosted: Tue Apr 27, 2010 12:42 am    Post subject: Reply with quote

It has been a while since the last status report. Well, it was a list of some of the new
IntelliSense features that gave away too much info.
The two functions of the "Find In Files" dialog in Phoenix 2.0 have been divided between two
dialogs in Phoenix 3.0. The first dialog handles the "Find In Files" option and the second
dialog handles whatever the second function was. It will probably take another month to
complete the second dialog.

Creating the second dialog spawned a third dialog which users of Phoenix will find very useful.
It is called Validate End Constructs... a real time saver.
Back to top
View user's profile Send private message Send e-mail
Herman Kieskamp
Member


Joined: 11 Oct 2004
Posts: 157
Location: Netherlands

PostPosted: Wed Apr 28, 2010 5:49 am    Post subject: Reply with quote

TechSupport wrote:

Creating the second dialog spawned a third dialog which users of Phoenix will find very useful.
It is called Validate End Constructs... a real time saver.


You mean validate the flow of nested constructions?

We don't have to rely on indention for a check on proper nesting ?

(one of the reasons i allways split if-then procedures over more lines. so I can indent, and I am not confused by one-liners). (political statement? Very Happy )

Herman.
Back to top
View user's profile Send private message
TechSupport
Site Admin


Joined: 14 Sep 2004
Posts: 683
Location: Mississauga ON, Canada

PostPosted: Wed Apr 28, 2010 8:22 am    Post subject: Reply with quote

Quote:

You mean validate the flow of nested constructions?

We don't have to rely on indention for a check on proper nesting ?

I guess I let the cat out of the bag again.

For example, if an error is introduced in the DialogProc function of the Tray.bas sample that
ships with the PowerBASIC compiler(see code at end of post), the compiler will generate the
following log file:
Quote:

PowerBASIC for Windows
PB/Win Version 9.03
Copyright (c) 1996-2010 PowerBasic Inc.
Englewood, Florida USA
All Rights Reserved

Error 449 in C:\PBWin90\Samples\Sdk\Tray\Tray.bas(130:005): SELECT expected
Line 130: END SELECT
==============================
Compile failed at 7:47:47 AM on 28/04/2010


Now imagine if this was a 60000 line file in a project with many files... pick an expletive.


Code:

FUNCTION DialogProc (BYVAL hDlg AS DWORD, BYVAL wMsg AS DWORD, _
                     BYVAL wParam AS DWORD, BYVAL lParam AS LONG) AS LONG

  LOCAL p AS POINTAPI
 
  STATIC hMenu AS DWORD
  STATIC ti    AS NOTIFYICONDATA

  SELECT CASE AS LONG wMsg
    CASE %WM_INITDIALOG  ' sent right before main dialog is shown
      ' Select first Option control
      SendDlgItemMessage hDlg, 101, %BM_SETCHECK, %BST_CHECKED, 0
     
      ' Get Menu Handle
      hMenu = GetSubMenu(LoadMenu(g_hInst, "POPUPMENU"), 0)
      IF hMenu THEN
      ' Add tray icon
      ti.cbSize           = SIZEOF(ti)
      ti.hWnd             = hDlg
      ti.uID              = g_hInst
      ti.uFlags           = %NIF_ICON OR %NIF_MESSAGE OR %NIF_TIP
      ti.uCallbackMessage = %WM_TRAYICON
      ti.hIcon            = LoadIcon(g_hInst, "FACE1")
      ti.szTip            = "Task Tray Example"
      Shell_NotifyIcon %NIM_ADD, ti
      DestroyIcon ti.hIcon
   
      FUNCTION = 1
 
 
    CASE %WM_TRAYICON
 
      SELECT CASE AS LONG LOWRD(lParam)
        ' Left button press
        CASE %WM_LBUTTONDOWN
          IF IsWindowVisible(hDlg) = %FALSE THEN
            ShowWindow hDlg, %SW_SHOW
          END IF
       
        ' Right button press
        CASE %WM_RBUTTONDOWN
          IF IsWindowVisible(hDlg) = %FALSE THEN
            SetForegroundWindow hDlg
            GetCursorPos p
            TrackPopupMenu hMenu, 0, p.x, p.y, 0, hDlg, BYVAL %NULL
            PostMessage hDlg, %WM_NULL, 0, 0
          END IF
      END SELECT
 
 
    CASE %WM_DESTROY
      ' Remove the tray icon if the application is closed
      Shell_NotifyIcon %NIM_DELETE, ti
 
    CASE %WM_COMMAND 
     
      SELECT CASE LOWRD(wParam)
        CASE 101 TO 105
          ' Change tray icon
          ti.hIcon = LoadIcon(g_hInst, "FACE" + FORMAT$(LOWRD(wParam) - 100))
          Shell_NotifyIcon %NIM_MODIFY, ti
          DestroyIcon ti.hIcon
         
        CASE %IDOK
          ' Display the about box from resource - see Tray.rc
          DialogBox g_hInst, BYVAL 101&, %HWND_DESKTOP, CODEPTR(AboutProc)
       
        CASE %IDCANCEL
          ' Make sure they want to exit
          IF MessageBox(hDlg, _
            "Close Tray Example and remove its icon from the task tray?", _
            "Tray Example", _
            %MB_ICONEXCLAMATION OR %MB_OKCANCEL) = %IDOK THEN
            EndDialog hDlg, 0
            FUNCTION = 1
          END IF
      END SELECT
 
    CASE %WM_SYSCOMMAND 
     
      ' If either the minimize or close buttons are pressed, hide the
      ' window so it doesn't appear in the task bar.
      SELECT CASE (wParam AND &H0FFF0)
        CASE %SC_MINIMIZE
          ShowWindow hDlg, %SW_HIDE
          FUNCTION = 1
          EXIT FUNCTION
       
        CASE %SC_CLOSE
          ShowWindow hDlg, %SW_HIDE
          FUNCTION = 1
          EXIT FUNCTION
      END SELECT
     
  END SELECT

END FUNCTION
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    Prometheus Software Forum Index -> Phoenix 3.0 All times are GMT - 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group