Archive

Posts Tagged ‘Documentation’

Qt Smart Pointers

February 7th, 2010 No comments

User Experience Guidelines

February 7th, 2010 No comments

Andrei Alexandrescu “Iterators Must Go!”

February 6th, 2010 No comments

Andrei Alexandrescu gives his keynote presentation, “Iterators Must Go!” at BoostCon 2009. Slides are available here (pdf).

Permalink

Iterators Must Go (Google Docs)

Qt::WA_StaticContents

December 1st, 2009 No comments

Qt Assistant: Indicates that the widget contents are north-west aligned and static. On resize, such a widget will receive paint events only for parts of itself that are newly visible. This flag is set or cleared by the widget’s author. (Link)

But also it prevents to avoid flicking during resizing.

The demo demonstrates the effect of setting the Qt::WA_StaticContents attribute on any widget in Qt 4.5

Tags: , ,

Boost compilation with Visual Studio

November 17th, 2009 No comments

build bjam

  • go to %BOOST%/tools/jam/src folder
  • run build.bat file
  • copy bjam.exe file to %BOOST%/bin folder from %BOOST%/tools/jam/src/bin.ntx86 folder

build boost

  • go to %BOOST% folder
  • compile Boost using bjam.exe:

bin\bjam.exe –build-dir=”C:\Dev\Libs\boost\build-boost” –toolset=msvc –build-type=complete stage

Computer Science for Everyone

October 4th, 2009 No comments

Adaptive Learning Online is a website for everyone who is interested in learning Computer Science related topics. We provide information and interactions for learning.

We created this website because we felt that the Internet has vast amounts of information required to learn computer science. But this information is scattered all around the net making it intimidating to a new learner. We also realize that just information is not enough for a proper learning experience. There needs to be a place to ask questions, discuss various topics, do some exercises, get them reviewed, work on projects, and many other things.

We plan to curate existing multimedia content from the Internet and present it to learners in a structured manner. We will also provide tools for interaction and collaboration which people can use to enhance their learning process. A long time back I wrote a blog post on networked reciprocal learning. We are hoping to realize that vision of an ecosystem where people have access to information and interactions, and can learn in a space without any barriers.

The website is free for use. Registration is not required to view material on this website, however several parts of the website such as forums do need registration. Registration is free, so please register and use the full potential of this website.

Qt State Machine Overview

September 24th, 2009 No comments

Сайт «Алгоритмы и методы»

September 16th, 2009 No comments

«Алгоритмы и методы» (algolist.manual.ru)

Desktop Window Manager

September 15th, 2009 No comments

The desktop composition feature, introduced in Windows Vista, fundamentally changes the way applications display pixels on the screen. When desktop composition is enabled, individual windows no longer draw directly to the screen or primary display device as they did in previous versions of Microsoft Windows. Instead, their drawing is redirected to off-screen surfaces in video memory, which are then rendered into a desktop image and presented on the display.

Desktop composition is performed by the Desktop Window Manager (DWM). Through desktop composition, DWM enables visual effects on the desktop as well as various features such as glass window frames, 3-D window transition animations, Windows Flip and Windows Flip3D , and high resolution support. For more information about the user experience features enabled by the DWM visit the Windows Vista: Features user experience page.

Many of the DWM features can be controlled or accessed by an application through the DWM APIs . The following documentation describes some of the features and requirements of the DWM APIs.

Security Development Lifecycle (SDL) Banned Function Calls

September 15th, 2009 No comments

Note: This paper is derived from the book The Security Development Lifecycle, by Michael Howard and Steve Lipner, Microsoft Press, 2006.

Prohibiting the use of banned APIs is a good way to remove a significant number of code vulnerabilities — this practice is reflected in Stage 6 of The Microsoft Security Development Lifecycle: “Establish and Follow Best Practices for Development.” It can also be referenced in Chapter 11 of the Microsoft Press Book The Security Development Lifecycle.

When the C runtime library (CRT) was first created about 25 years ago, the threats to computers were different; machines were not as interconnected as they are today, and attacks were not as prevalent. With this in mind, a subset of the C runtime library must be deprecated for new code and, over time, removed from earlier code. It’s just too easy to get code wrong that uses these outdated functions. Even some of the classic replacement functions are prone to error, too.

This list is the SDL view of what comprises banned APIs; it is derived from experience with real-world security bugs and focuses almost exclusively on functions that can lead to buffer overruns (Howard, LeBlanc, and Viega 2005). Any function in this section’s tables must be replaced with a more secure version. Obviously, you cannot replace a banned API with another banned API. For example, replacing strcpy with strncpy is not valid because strncpy is banned, too.

Also note that some of the function names might be a little different, depending on whether the function takes ASCII, Unicode, _T (ASCII or Unicode), or multibyte chars. Some function names might include A or W at the end of the name. For example, the StrSafe StringCbCatEx function is also available as StringCbCatExW (Unicode) and StringCbCatExA (ASCII).

More info