flat assembler
Message board for the users of flat assembler.

Index > Tutorials and Examples > [fasm2] Common Controls (run-time)

Author
Thread Post new topic Reply to topic
bitRAKE



Joined: 21 Jul 2003
Posts: 3977
Location: vpcmipstrm
bitRAKE 22 Jun 2024, 22:38
In the past I've made examples for MRU, TaskDialog. Yet, there are many more controls ...
  • Animation
  • ComboBoxEx
  • Date and Time Picker
  • Header
  • IP Address
  • List View
  • Month Calendar
  • Progress Bar
  • Rebar
  • Status Bar
  • SysLink
  • Tab Control
  • Toolbar
  • Tooltip
  • Trackbar
  • Treeview
  • Up-Down

I've create these templates for all the common controls from a run-time perspective (i.e. the controls are created with code and not resource data structures).

These examples are mostly less than 100 lines of code. Mainly, these are used as snippets to build other projects. The goal isn't to use every feature of a control.

https://github.com/bitRAKE/fasm2-examples/tree/main/controls

If someone else finds them useful that's great as well.

In the future I'll create a set of from an assemble-time perspective (i.e. minimal code, for example SysAnimate requires no control specific code), maybe an advanced set of control uses, and perhaps some custom controls (I usually keep these to myself).

_________________
¯\(°_o)/¯ “languages are not safe - uses can be” Bjarne Stroustrup
Post 22 Jun 2024, 22:38
View user's profile Send private message Visit poster's website Reply with quote
bitRAKE



Joined: 21 Jul 2003
Posts: 3977
Location: vpcmipstrm
bitRAKE 12 Jul 2024, 05:28
I've put a little more work into this, one can kind of see the direction intended. The advanced version takes a control to it's limit (without subclassing or ownerdraw) - finding all the errors in documentation - what works and what is BS. SysLink is the first advanced category control. It's time consuming to run down all the documentation, and there are no examples of SysLink used in this way.

_________________
¯\(°_o)/¯ “languages are not safe - uses can be” Bjarne Stroustrup
Post 12 Jul 2024, 05:28
View user's profile Send private message Visit poster's website Reply with quote
Ali.Z



Joined: 08 Jan 2018
Posts: 687
Ali.Z 13 Jul 2024, 00:10
not sure if this will help, but lazarus (ide for delphi) have many controls implemented, although not sure how complex it is but if you can read pascal you might find how some of the controls work.

_________________
Asm For Wise Humans
Post 13 Jul 2024, 00:10
View user's profile Send private message Reply with quote
bitRAKE



Joined: 21 Jul 2003
Posts: 3977
Location: vpcmipstrm
bitRAKE 13 Jul 2024, 00:30
Thank you, comprehensive examples do help, but often they don't say what didn't work. For example, SysLink acts like CDDS_PREPAINT might work, but no further messages are sent. Or WM_NOTIFY doesn't populate the NMLINK structure completely. Just reading the documentation we get the impression things should work a particular way - perhaps they did at one time - the current reality is something else.

The other part is the relationship between features. Enabling modern theming in windows will often supersede all other customizations.
Post 13 Jul 2024, 00:30
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
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
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.